從零開始的 dApp 開發:2024 年學習路線圖

Web3 的機會已經來臨,接下來的三個月,我必須全力以赴。以下是我 2024 年的學習計畫:

當我回想起今年年初的那段時光,我心懷對香港金融科技的雄心壯志,堅信能夠找到理想的工作。儘管我擁有 Full Stack 開發的豐富經驗,但實際願意給我面試機會的公司並不多。或許最相關的面試經歷是與一家本地交易所的,當時我通過了多輪的面試,然而,我們最終未能繼續下一步,這場考驗無聲無息地劃下了句點。

隨著時間的流逝,我漸漸將這段經歷深埋在記憶深處,認為它已經告結束。

然而,命運的齒輪開始轉動。

就在我參加台北區塊鏈週活動,站在 14 樓俯瞰遠處風景的時候,突然間一位交易所老闆喊出了我的名字:

「Calpa,你是 Calpa 嗎?」

我回答說是,你是?

「真的是你,我這裡有你的簡歷。」

我心中突然生出一絲不安,想著是否有人揭開了我過去的一些黑歷史。

然而,當他開始提到他的公司名稱時,我漸漸想起當時他對我提出的一個挑戰:開發智能合約。

當我還在猶豫之際,他突然問了我一個問題:

「你準備好了嗎?智能合約學得怎麼樣?」

頓時,我意識到自己在這段時間雖然學了一些,但還未能深入了解智能合約。我明白,接下來的三個月,我必須更加全力以赴,不辜負這個難得的機會。機會已經來臨,現在是我出發的時候了。

以下,就是我在 2024 年的學習計畫,希望可以不負眾望。

第一步:入門與基礎

在踏入 dApp 開發領域之前,我需要建立一個堅實的基礎。第一個月的目標是入門並理解基本概念:

  • 通過在線課程例如 CryptoZombies,學習區塊鏈的基本原則,包括分佈式帳本、區塊、交易、共識機制等
  • 我需要了解以太坊的基本概念,包括智能合約、以太幣(ETH)、Gas 費用等
  • 學習 Solidity,這是用於以太坊智能合約的編程語言。可以使用線上教程和 Solidity 文檔
  • 安裝和配置以太坊開發環境,包括 Foundry,Remix 和 Metamask
  • Hello World 智能合約:創建我的第一個智能合約,例如一個簡單的 Hello World 合約,並部署到本地區塊鏈上

第二步:深入學習與實踐

在第二個月,我將深入學習區塊鏈和 dApp 開發的更多細節,並開始實際建立一個 dApp:

  • 學習 Solidity 的高級特性,包括合約繼承、事件、庫等。開始編寫更複雜的智能合約
  • 學習如何使用 Web3.js 來與以太坊區塊鏈互動,包括合約部署、交易發送和數據檢索
  • 開始設計我的 dApp,著手開發前端介面。我們可以使用 TypeScript,React / Vue.js 配合 Viem 來開發我的界面
  • 智能合約測試:學習如何編寫智能合約測試,以確保我的合約安全性和功能正常
  • dApp 部署:學習如何將我的 dApp 部署到以太坊測試網絡,以便進行測試和測試用戶體驗

第三步:實踐與構建項目

在第三個月,我將著手實際建立一個完整的 dApp 項目:

  • 選擇 dApp 項目:選擇一個具體的 dApp 項目,可以是去中心化應用、數字資產管理工具、NFT 市場等。確定我的項目範圍和目標
  • 用戶測試與反饋:邀請用戶參與測試,獲得他們的反饋,並不斷優化我的 dApp
  • dApp 部署:最終,將我的 dApp 部署到主網絡,使其對所有用戶可用

後記

2023 年台北區塊鏈週之行,這一次來台北,有幸聆聽了許多行業專家的分享,也與來自世界各地的區塊鏈愛好者交流了心得。我深刻地感受到,Web3 正在蓬勃發展,並將在未來引領技術革命。這讓我更加堅定了我對 Web3 賽道的信心。在 2024 年,我將全程投入 dApp 開發,為這個新興領域貢獻自己的力量。

區塊鏈技術的去中心化、透明和安全特性,為我們構建一個更加公平、公正的社會提供了可能。dApp 作為區塊鏈技術的應用之一,具有廣闊的發展前景。

我相信,通過我的努力和學習,我可以在 dApp 開發領域取得一定的成就,並為 Web3 生態系統的發展做出貢獻。

附錄:整合開發 dApp 的崗位要求

職位要求

  • 至少 5 年的前端/全端開發經驗
  • 熟練掌握全端開發技術:候選人需要熟練掌握 MERN(MongoDB、Express、React、Node.js)、Next.JS 或其他相關開發框架,以能夠開發全端應用。
  • 具備熟練的 Solidity 編程技能,能夠進行合約開發和性能優化
  • 關注 EVM 兼容鏈、以太坊 Layer 2、ZKVM 等環境中的產品研究和分析
  • 熟悉使用第三方安全合約庫,如 OpenZeppelin
  • 具有網頁/移動產品開發經驗
  • Micro Service 開發經驗
  • 熟悉後端開發技術,包括 GraphQL、gRPC、MongoDB 和 PostgreSQL,這些技術可能在項目中使用
  • 具備卓越的團隊合作能力,能夠獨立思考,並具備強烈的責任感和自我激勵能力
  • 對區塊鏈技術的知識和熱情
  • 具有流利的英語口語和書寫能力
  • 熟悉 Git
  • 熟悉 React
  • 熟悉 CSS-in-JS (Emotion)
  • 擁有 Storybook 經驗
  • 熟悉 esbuild
  • 熟悉 vite
  • 熟悉 ethers.js
  • 熟悉 immer.js
  • 熟悉 Cypress 來編寫 E2E 測試

職責

  • 參與基於區塊鏈的應用的開發工作,涉及到智能合約和分佈式應用的開發
  • 開發和維護高質量軟件解決方案,確保它們滿足客戶需求。
  • 參與從設計、開發、測試、部署到維護的整個軟件開發生命周期
  • 研究和整合新技術,以不斷改進公司的開發流程和產品。

預期

  • 與項目聯合創始人、領域專家、產品和營銷團隊密切合作,從項目的構想到產品上線,共同交付項目。
  • 整合多種服務和低代碼工具:如 Webflow、Retool、n8n,以快速建立原型,檢查可行性並確定業務價值。
  • 指導 Junior 軟件工程師:並促進敏捷開發過程。
  • 設計強大、具有成本效益的系統架構:深刻理解系統中的權衡,並能夠理解基礎設施的維護和成本影響,並執行基本的 DevOps 任務。
  • 識別瓶頸並優化團隊的工作流程:從產品需求到持續交付系統。2024 年:從零開始的 dApp 開發生活
關於 Calpa

Calpa 擅長使用 TypeScriptReact.jsVue.js 建立 Responsive Website。

他積極參與開源社區,曾在 2019 年的香港開源大會上擔任講者,提供工作經驗和見解。此外,他也在 GitHub 上公開分享個人博客程式碼,已獲得超過 300 顆星星和 60 個分支的支持。

他熱愛學習新技術,並樂意分享經驗。他相信,唯有不斷學習才能跟上快速演變的技術環境。

熱門文章

最新文章

圖片管理中心
管理圖片資源
IP 查詢
快速查詢和定位 IP 地址的地理位置和相關信息
Python 運行器
無需後端、無需登入,只需打開瀏覽器即可運行 Python 代碼(由 Pyodide 提供支持)
封面圖生成器
自動創建適合各種平台的文章封面圖
原作(青山剛昌)產生器
一鍵創建原作(青山剛昌)的封面圖
日本色彩
探索和使用傳統日本色彩
部落格內容洞察儀表板
以視覺化儀表板方式追蹤文章成效、分享熱度與分類分布,協助創作者掌握內容表現。
蒙特卡羅估算 π
使用蒙特卡羅方法演示 π 值的估算過程
LLM
使用 LLM 模型進行聊天
活動圖生成器
一鍵創建活動的封面圖
Wagmi Card
一鍵創建 Wagmi 的封面圖
Facebook Quote
Facebook Quote
Music Macro Language (MML) Studio
用程式語法編寫旋律,用音符構築想像
Blurhash
一鍵創建 Blurhash
文字分類器
使用 MediaPipe TextClassifier 分類文字
前端工程師免費工具資源
前端工程師免費工具資源
後端工程師免費工具資源
後端工程師免費工具資源
全端工程師免費工具資源
全端工程師免費工具資源
Web3 工程師免費工具資源
Web3 工程師免費工具資源
紫微斗數排盤系統|結合 AI 的命盤性格與事業財務分析生成器
紫微斗數排盤工具,輸入生日與時辰,自動生成完整命盤分析提示(Prompt)。結合最專業紫微理論與 AI 助力,助你深入解析性格、事業、財務與人際課題。免費使用,適合命理師及紫微愛好者。
PixAI Prompt 組合器|快速打造可用於 AI 繪圖的語言拼圖
使用 PixAI 卻不會寫 prompt?這個工具幫你一鍵組裝角色、表情、風格語彙,輸出高品質繪圖提示語句(Prompt),可直接貼入 PixAI 使用。適合插畫師、創作者、AI 新手與 VTuber 角色開發者。