閱讀時間 14 分鐘
請將本指南作為您踏入 Web3 開發領域所需的檢查清單。我們不會詳述具體的技術實作步驟,而是提供相關說明與資源,助您快速上手。
想成為 Web3 開發者嗎?在這份指南中,您將了解成為 Web3 開發者所需的步驟。無論您是從零開始,還是從 Web2 轉行而來,這份檢查清單都能讓您迅速上手。讓我們開始吧!
什麼是 Web3 開發?
Web3 開發是指建構能在Ethereum、Bitcoin)Solana等區塊鏈網路上手動的應用程式。 與依賴由單一實體控制之集中式伺服器與資料庫的傳統 Web2 應用程式不同,Web3 應用程式運用區塊鏈技術,將資料與控制權分散至眾多使用者之間。此方法透過智慧合約(區塊鏈上的自動執行程式碼)與去中心化儲存,打造出無需信任中央權威、且開放給任何人檢視、使用及進一步開發的應用程式。
先決條件
如果您是剛接觸程式設計或 Web3 的新手,您需要先掌握基礎知識。請參考以下資源,並花些時間深入理解這些內容,再繼續往下學習。這些工具對於 Web3 開發至關重要。
設定開發環境
- 安裝 Node.js 與 npm;請先下載,然後像安裝其他程式一樣進行安裝。
- 安裝一個程式碼編輯器(用於編寫和執行程式碼的程式)。常見的選項包括:
學習基礎的 HTML、CSS 和 JavaScript
- Mozilla HTML 文件
- Mozilla JavaScript 文件
- Mozilla CSS 文件
- 透過 YouTube、edX、Google 等平台,善用線上的免費學習資源。
- 不妨考慮使用ChatGPT 等 AI 工具ChatGPT 加快處理你已經掌握的任務,但切勿將其當作依賴的拐杖。舉例來說,應將ChatGPT 一名初級開發者ChatGPT 運用,協助撰寫你已經理解的 CSS 程式碼,而非依賴它來處理你尚未學到的概念。
如果你對這一切都還很陌生,別擔心。以下步驟將協助你設定開始編寫程式所需的基本工具,並引導你學習基礎的網頁技術。
理解區塊鏈概念
在深入探討 Web3 開發的技術細節之前,理解 Web2 與 Web3 之間的核心差異至關重要。雖然其中存在許多細微之處,但有兩項根本性的轉變定義了 Web3 的範式:
- 用戶自主認證:Web3 不再依賴集中式的用戶帳戶,而是採用由用戶自行掌控的加密錢包。
- 公開且透明的帳本:所有交易及智慧合約互動皆記錄於公開區塊鏈上,從而實現無需信任的驗證。
請花些時間了解區塊鏈技術的基礎知識,包括節點、共識機制和加密技術等概念。以下兩份指南將簡要介紹這些概念,但請務必透過網路搜尋更多資源,以深入鑽研。
- 學習區塊鏈技術的基礎知識
- 深入探討「節點」、「共識」和「密碼學」等概念
- Web3 術語表
Web2 與 Web3 架構
請花一點時間了解 Web2 與 Web3 之間的差異。請注意,這些分類並非絕對,兩種範式中都可能存在重疊或例外情況。
| 面向 | Web2 | Web3 |
|---|---|---|
| 驗證 | 集中式使用者帳戶,通常與電子郵件綁定 | 由使用者持有的加密貨幣錢包 |
| 資料透明度 | 有限,通常由服務供應商控制 | 適用於大多數交易的公開區塊鏈帳本 |
| 信任模型 | 依賴中央機關及服務供應商 | 透過加密驗證實現無需信任的系統 |
| 智慧合約 | 不常使用(可透過 API 實現類似功能) | 核心功能,可實現複雜的鏈上邏輯 |
| 治理 | 企業的集中式決策 | 傳統治理與去中心化自治組織(DAO)並存;集中式影響力仍相當顯著 |
Web2 和 Web3 各有其優點與缺點。Web3 技術仍在不斷演進,在可擴展性、使用者體驗及安全性方面仍面臨許多挑戰。
區塊鏈作為後端
在深入探討具體的區塊鏈環境之前,必須先理解:區塊鏈可以被視為去中心化應用程式(dApps)的一種後端。正如傳統的網路應用程式有各種後端選項(例如 Node.js、Python/Django、Ruby on Rails),區塊鏈開發者也有多種區塊鏈選項可供選擇。
每種區塊鏈都有其獨特的功能、取捨與生態系統。選擇哪種區塊鏈取決於以下因素:
- 性能要求
- 可擴展性需求
- 開發生態系統與工具
- 目標受眾與現有用戶群
- 特定功能(例如:智慧合約功能、代幣標準)
Ethereum (EVM)和Solana (SVM)是兩種廣受歡迎的 dApp 開發區塊鏈環境。讓我們來比較一下這兩者:
EVM 與 SVM 的比較
| 面向 | EVM(Ethereum ) | SVM(Solana 機器) |
|---|---|---|
| 由……使用 | Ethereum 許多與 EVM 相容的區塊鏈 | Solana |
| 主要語言 | Solidity | Rust |
| 生態系統 | 規模龐大、被廣泛採用 | 持續成長,專注於卓越表現 |
| 表現 | 交易速度中等,手續費較高 | 交易速度快,手續費較低 |
| 發展類比 | 與在 Windows 或 Mac 上進行開發類似 | 這與為專用的、高效能的 Unix 系統進行開發相似 |
| 學習曲線 | 中等(Solidity 是專為智慧合約設計的) | 中等(Rust 的應用範圍不僅限於區塊鏈) |
| 智慧合約功能 | 功能豐富,廣泛支援各項標準 | 功能日益豐富,並針對效能進行了優化 |
| 開發工具 | 一套功能齊全的工具與框架 | 開發工具集,著重於效能 |
正如開發者可能會根據專案需求在不同的後端技術之間做出選擇,區塊鏈開發者也會根據其特定需求和目標生態系統,在 EVM 與 SVM(或其他區塊鏈環境)之間做出選擇。
雖然有可能精通多種區塊鏈環境,但通常最好先從其中一種開始,累積專業知識後再擴展至其他環境。這種做法能讓你在拓展至其他領域之前,先深入理解一個生態系統,這就像是在學習另一項後端技術之前,先掌握一項後端技術一樣。
步驟 1:了解加密貨幣錢包
加密貨幣錢包具備多項功能,其中一項主要功能是對使用者進行驗證。
- 使用者驗證
- 加密貨幣的儲存
- 與智慧合約互動
- 部署您自己的程式
- 管理您的數位資產
不妨將其視為您在區塊鏈世界中的銀行帳戶與數位身分。透過將您的帳戶與一組公鑰和私鑰(我們稍後會詳細說明)綁定,您便能安全地存取區塊鏈資產、鎖定資源,並進行交易。
錢包的主要組成部分
- 公開地址:這就像您的電子郵件地址或銀行帳號一樣。您可以安全地與他人分享此地址,並用它來接收加密貨幣或與智慧合約進行互動。
- 私鑰:這就像是一組超級強大的密碼。它賦予您對錢包的完全控制權。切勿將此資訊透露給任何人!
- 種子短語:又稱恢復短語或助記詞,是一組單詞(通常為 12 或 24 個),可用於生成多個私鑰,進而產生多個公鑰地址。您可以將其視為錢包的「萬能鑰匙」。
錢包的運作原理
為了了解錢包在底層的運作原理,讓我們為相容於 EVM 和 SVM 的區塊鏈各建立一個簡單的「一次性錢包」。 所謂的「一次性錢包」,可以視為一種臨時且僅限單次使用的錢包,主要用於測試或與某些區塊鏈應用程式互動——這些情況下,您可能不希望動用您的主錢包。雖然每種區塊鏈在生成金鑰對(例如公鑰和私鑰)時採用不同的演算法,但其基本流程是相同的。
- 相容於 EVM(Ethereum)
- 相容於 SVM(Solana)
點擊「產生錢包」以建立一個相容於 EVM 的加密貨幣錢包。這將為您提供一個公開地址和一個私鑰,可用於測試目的。在正式環境中,您應使用錢包應用程式來安全地管理這些資訊。EVM 錢包通常使用一個由 64 個字元組成的十六進位私鑰,以及一個以「0x」開頭、長度為 42 個字元的公開地址。
點擊「建立新錢包」以建立一個相容於 SVM 的 Devnet 錢包。Solana 金鑰對,其中秘密金鑰為 64 個數字組成的陣列,公鑰則為 Base58 編碼的字串。
此處的關鍵要點在於,雖然這兩種系統都採用公鑰與私鑰加密技術,但它們的格式不同,且在金鑰建立與管理方面也略有差異。
熱門錢包選項
在深入探討熱門的錢包選項之前,不妨將加密貨幣錢包視為「使用者名稱與密碼」的加密版本。透過您的公鑰(類似於使用者名稱),您可以查看與您的帳戶相關的鏈上資訊——例如餘額、資產持有狀況、社群成員資格以及交易紀錄。而私鑰(如同您的密碼)則讓您能夠對帳戶進行變更,例如轉出資產或簽署訊息。
您通常所理解的「錢包」,其實只是個使用者介面(UI),它會顯示您的代幣餘額和帳戶資訊,並在幕後運用這些金鑰。該使用者介面會擷取您帳戶的相關詳細資料,並提供按鈕,讓您能輕鬆執行發送或接收資產等常見操作。
在實際開發和測試時,以下是一些您可選擇的熱門錢包。
多鏈錢包
- Coinbase 錢包:支援多條區塊鏈,包括Ethereum Solana
- MetaMask:支援Ethereum EVM 相容的區塊鏈,現在Solana 「Snaps」(類似於錢包的擴充功能)支援Solana
- Phantom:最受歡迎的Solana ,同時也支援部分 EVM 鏈
專為 EVM 設計的錢包:
- Rabby:一款專為資深使用者設計、具備進階功能的新選擇
Solana SVM) 錢包:
- Solflare:另一款廣受好評且功能齊全的Solana
步驟 2:了解區塊鏈瀏覽器
區塊鏈探索器就像是區塊鏈世界的搜尋引擎。透過它們,您可以查看所有交易、智慧合約及其他鏈上活動。熟悉這些工具對於開發和故障排除都至關重要。
在這些網站上花些時間之後,你至少應該了解以下幾點:
- 如何使用交易哈希值或錢包地址查詢交易紀錄
- 如何讀取基本交易詳細資訊(發送者、接收者、金額、狀態、Gas 費用)
- 如何識別並理解交易中的代幣轉移
請從以下分頁中選擇,測試您Ethereum Solana 瀏覽器的了解程度。
- Ethereum
- Solana
步驟 3:取得代幣
在區塊鏈網路中,代幣不僅僅是一種數位貨幣,更扮演著至關重要的角色。它們被用來支付網路上的運算和儲存成本。以下是您需要了解的內容:
- 代幣的用途:區塊鏈上的代幣其運作方式類似於遊戲或 SaaS 平台中的點數。正如您可能會使用點數來解鎖功能、購買物品或執行操作一樣,代幣是用來在與區塊鏈互動時(例如部署智慧合約或發送交易)存取及支付網路資源的費用。
- Gas 費用:在許多區塊鏈網路中,Ethereum EVM 相容的鏈,運算成本通常被稱為「Gas 費用」。操作越複雜,所需的「Gas」(也就是說,所需的代幣)就越多。
- 儲存成本:某些區塊鏈(例如Solana)也設有明確的儲存成本。當您將資料儲存至區塊鏈時,必須使用代幣支付該儲存空間的費用。
- 網路擁塞:這些操作所需的代幣成本會因網路使用狀況而波動。在繁忙時段,成本可能會大幅上升。
您所需的代幣類型取決於您所使用的區塊鏈以及開發環境:
- 如果您正在使用公開testnet進行開發,您將需要testnet 。這些代幣讓您testnet 使用真實的加密貨幣即可與testnet 互動,從而能安全地進行實驗與學習。 您可以使用Quicknode「多鏈水龍頭」來獲取各區塊鏈網路的測試代幣。不過請注意,使用該水龍頭需滿足某些先決條件(例如持有少量真實資金),這是為了防止我們遭到濫用;您在其他水龍頭上可能會看到類似或相近的先決條件。此外,您也可以透過 Google 搜尋到其他線上水龍頭,這些平台在領取代幣方面的要求可能較為寬鬆。
- 如果您是在本地機器上進行測試(該環境是隔離的,且僅您本人可存取),則無需從外部來源取得testnet 。您所使用的智慧合約開發工具與框架(例如Ethereum Hardhat、Truffle 或 Foundry,或是Solana 的 Anchor)會自動為您提供模擬代幣。這些本地環境已預先為帳戶充值,讓您無需外部代幣即可輕鬆部署智慧合約並與其互動。
開發人員通常會先進行本地開發以進行初步測試,接著在準備mainnet 轉移至測試網。
步驟 4:連線至區塊鏈
設定連線至區塊鏈節點。若要與任何區塊鏈進行互動,您需要連線至一個節點。您有兩種選擇:
- 自行架設節點:這能讓您擁有完全的控制權,但需要具備技術知識和資源才能進行維護。我們提供多篇關於自行架設節點的教學文章,您可點此查閱。
- Use a node provider: Services like Quicknode offer easy access to nodes across 70+ chains. Quicknode provides RPC endpoints and additional dev-tooling through their Add-ons, which includes various plugins to enhance your development experience. Using a node provider like Quicknode can significantly simplify your development process, especially when you're working with multiple chains or need advanced features. It allows you to focus on building your dApp rather than maintaining infrastructure. If you do not already have a Quicknode account, you can create one for free here.
(可選)互動式 RPC 測試
設定好endpoint務必進行測試以確保一切運作正常。以下提供幾種測試連線的方法。如果您尚未設定 RPC,也別擔心!請將本指南加入書籤,待您準備好時再回來查看。
如果您已經設定好 RPC,那就來做個快速測試吧!開啟終端機並執行以下 curl 指令(請將 YOUR_RPC_URL 請填入您實際的 RPC URL,無論是針對 EVM 鏈(Ethereum)還是 SVM(Solana)。
- Ethereum
- Solana
curl -X POST YOUR_ETHEREUM_RPC_URL -H "Content-Type: application/json" --data '{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":1}'
curl -X POST YOUR_SOLANA_RPC_URL -H "Content-Type: application/json" --data '{"jsonrpc":"2.0","id":1,"method":"getBlockHeight"}'
接著按下鍵盤上的 Enter 鍵。若操作成功,您應會看到包含最新區塊號的回應。
第 5 步:智慧合約與程式開發
既然您已經設定好加密貨幣錢包,並對區塊瀏覽器有更多了解,也具備 RPC 連線能力(無論是自行運行還是透過Quicknode),以及testnet (可選),現在是時候學習接下來的步驟了。
請根據您對 EVM(Ethereum )或 SVM(Solana )開發的興趣,選擇適合您的發展路徑。
EVM 開發路徑
EVM 入門指南
這適用於使用Ethereum (EVM)的區塊鏈(例如Ethereum),以及其他與 EVM 相容的區塊鏈,例如Base、Optimism、Polygon、Arbitrum 等。
- 學習 Solidity 程式語言的基礎知識(請參閱Solidity 文件)。雖然市面上還有其他語言(例如Vyper),但無論是在教育資源還是開發工具方面,Solidity 都擁有最豐富的資源。
- 了解什麼是智慧合約,以及它們在 EVM 相容鏈上的運作方式。您可以將這份指南作為學習 Solidity 以及建立您的第一個「Hello World」智慧合約的絕佳入門指南——《如何使用 Solidity 建立「Hello World」智慧合約》。這份資源還將引導您使用 Remix IDE(一款用於編寫和部署智慧合約的線上整合開發環境)。
- 使用 Hardhat 或 Foundry 建立本地開發環境(這兩者是目前最受歡迎的工具,擁有最豐富的資源和最直觀的介面)。請參閱以下指南來學習如何使用其中一種工具:如何Mainnet Hardhat 分叉Mainnet -如何使用 Foundry 分叉Ethereum
EVM 開發(中級)
接下來,隨著您在 EVM 開發旅程中不斷前進,請將重點放在以下幾個關鍵領域:
- Ethereum (EIP)與代幣標準:熟悉常見的代幣標準:ERC-20、ERC-721、ERC-1155、ERC-4337;Quicknode 針對每種標準Quicknode 教學指南,請務必查看這些內容,了解其應用場景與實作方式,然後挑選一個您感興趣的標準,並打造屬於您自己的專屬專案。 這可以是開發代幣生成器應用程式、NFT 系列、空投應用程式等。
- 進階智慧合約模式:有幾種模式值得您熟悉,例如工廠模式(透過程式碼在另一個智慧合約內部建立新合約)、代理模式(實作可升級的合約)以及存取控制(管理權限與角色)
- 安全性最佳實務:智慧合約並非完美無缺。了解常見的漏洞與攻擊途徑,例如著名的「重入攻擊」。
- 進階開發工具:探索OpenZeppelin,它提供了一套預先建置的合約庫,您可以利用這些合約來快速啟動專案,並防範常見的漏洞。此外,他們還提供其他幾項工具,例如「合約精靈」和「升級外掛程式」。
SVM 開發路徑
這適用於使用Solana 的區塊鏈,例如Solana、Eclipse 等。
SVM 入門指南
- 學習 Rust 程式語言的基礎知識。Rust 官方網站提供了豐富的學習資源。
- 了解Solana ,例如:
- 設定您的開發環境。安裝Solana 工具並設定本地驗證器
- 使用Solana 編寫並部署您的第一個Solana :第 1 部分與第 2 部分
- 了解如何使用 web3.js 與Solana 互動。
進階 SVM 開發
在您進行 SVM 開發的過程中,請著重關注以下幾個關鍵領域:
- 了解 SPL 代幣與 Metaplex NFT
- 學習進階程式設計模式:
想改上課程嗎?
如果您偏好更具系統性的學習方式,可以直接選修課程。以下提供幾種選擇:
- 使用Ethereum進行 DeFi 開發:本課程將教您如何在Ethereum testnet 建置去中心化金融應用程式。本課程的難度稍高,建議您先學習Ethereum 智慧合約的基礎知識(例如:部署 ERC-20 代幣,並熟悉與智慧合約的互動方式)。
- 《Solana 入門》:透過這門入門課程,展開您的Solana 之旅。
這些課程提供更具引導性的區塊鏈開發學習方式,對於剛接觸此領域或偏好結構化學習環境的學員而言,將特別有所助益。
第 6 步:建置去中心化應用程式(dApps)
開發去中心化應用程式(dApp)主要包含兩個核心元件:智慧合約(或程式)以及前端介面。一旦您熟悉了智慧合約/程式的開發,並掌握 HTML 和 JavaScript 的基礎知識,便可選擇以下其中一個教學指南,來部署您的第一個去中心化應用程式。
EVM 去中心化應用程式 (dApps)
SVM 去中心化應用程式 (dApps)
- 如何打造Solana 克隆版(第一部分——交易歷史)
- 如何打造Solana 克隆版(第 2 篇,共 3 篇)—— 透過動態路由查詢交易詳情
- 如何打造Solana 克隆版(第 3 篇,共 3 篇)—— 取得質押帳戶
當你依照上述其中一個教學指南完成第一個 dApp 的開發後,不妨大膽嘗試,開始打造屬於你自己的獨特作品。選擇一個你真正感興趣的題材——無論是嗜好、社會議題,還是商業構想——並嘗試部署你自己的客製化智慧合約/程式,搭配相應的前端介面。發揮創意吧!這種做法不僅能讓學習過程更加愉快,當你著手處理對自己重要的議題時,更能加速你的學習進度。 請記住,實踐是最佳的學習方式,而打造你熱衷的專案,將能讓你在面對不可避免的難關時,依然保持動力。
加入社群
不妨考慮加入與 Web3 開發相關的 Discord 伺服器,或追蹤相關的 Twitter 帳號。這個社群將是您獲得支持與學習的絕佳來源!
其他資源
您可以在Quicknode指南平台上找到 200 多篇指南。您也可以使用標籤頁面來深入搜尋您想要的內容。以下是一些可供您繼續學習的資源。
- Ethereum
- Solana
- 查詢Solana 的餘額
- 《Solana上 SOL 的封裝、轉移與解封裝完整指南》
- 什麼Ethereum (EVM)?
- 什麼是 Nonce?Ethereum 的管理技巧
- 如何使用 Ethers.js 串流待處理交易
總結
如果你能讀到這裡,恭喜你。踏入 Web3 並非一蹴可幾,你應該做好持續學習的準備(即使你自認已是專家)。如果你遇到困難、有疑問,或是只是想聊聊你正在開發的專案,歡迎在 Discord 或 Twitter 上與我們聯繫!

