跳至內容
0%

探索 10 個最佳 Solidity 開發教學(2025)

Alchemy team headshot

作者 Alchemy

發布於 2022年10月4日閱讀時間 2 分鐘

Solidity 是一種用於撰寫智能合約的 web3 程式語言。Solidity 是為 Ethereum 區塊鏈所創造的,用 Solidity 撰寫的程式會在 Ethereum Virtual Machine(EVM)上執行。然而,Solidity 並不是一個常見的程式語言,因此許多開發者會透過教學來學習 Solidity。

為什麼教學是學習 Solidity 的好方法?

不同於課程通常時間較長、有固定進度且需要同步參與,教學內容則是簡短、可自訂進度,且不需同步進行。這種能自主學習 Solidity、不受任何特定教學者限制、也不用受截止日期壓力的彈性,是探索 Solidity 的好方式。

學習 web3 並不是一件容易的事。教學內容能以循序漸進的方式,幫助你有系統地掌握新知識,而不是東拼西湊從網路各處蒐集零散資訊。Solidity 教學會教授許多基本概念,例如如何安裝各種整合開發環境(IDE)、撰寫智能合約,以及打造熱門應用場景的最小可行產品(MVP),像是開發NFT 交易市場。

1. Hardhat 新手教學

Hardhat 是一套用於撰寫智能合約的開發者工具組,是 Solidity 開發者必須熟悉的重要工具。這篇Hardhat 新手教學需要一些 JavaScript、使用終端機、使用 Github 以及智能合約基礎知識,但它同時也提供了學習這些相關主題所需的資源。

本教學涵蓋以下內容:

  1. 設定 Ethereum 開發用的 Node.js 環境
  2. 建立並設定 Hardhat 專案
  3. 實作代幣的 Solidity 智能合約基礎知識
  4. 使用 Hardhat 為合約撰寫自動化測試
  5. 使用 Hardhat Network 搭配 console.log() 除錯 Solidity
  6. 將合約部署到 Hardhat Network 及 Ethereum 測試網

Hardhat 是建立及除錯智能合約時十分好用的環境。這篇 Hardhat 教學透過清楚的說明與程式碼片段,解釋了 Solidity 開發的基礎知識。

2. 使用 Alchemy 建立 Polygon 智能合約

這篇由 Polygon 團隊撰寫的教學,教學生如何使用 Alchemy 開發者平台建立 Polygon 智能合約。教學涵蓋以下步驟:

  1. 在 Alchemy 上建立 Polygon 應用程式作為起點
  2. 使用 Metamask 建立Polygon 錢包位址
  3. 將 MATIC 餘額加入錢包
  4. 使用 Hardhat 及 Ethers.js 編譯並部署專案
  5. 在 Alchemy 平台上查看合約狀態

這是一篇很有價值的教學,因為它不僅能幫助你入門在 Polygon 上部署智能合約,還能教你使用 Alchemy、Hardhat 及ethers.js等重要的 web3 開發工具。

這篇教學內容相當深入,對熟悉一般程式設計原則的初學者而言相當友善。

3. 透過 OpenSea 開發你的第一個 NFT 智能合約

這篇 OpenSea 教學說明了如何使用 Solidity、Hardhat、Ethers.js、MetaMask 及 Alchemy 建立你的第一個 NFT 智能合約。Solidity 開發者需要知道如何運用各種工具,而這篇教學提供了一個機會,讓你在製作 NFT 的同時使用一些最好的 web3 工具。

這篇教學從如何安裝開發環境開始,最後以驗證與後續改善程式碼的使用技巧作結。完成後的教學程式碼也發佈在 Github 上,供你完成後參考,或是在過程中卡關時查閱。

4. 建立動態 NFT

動態 NFT 是一種其圖像與 metadata 會依據鏈上及鏈下資料而改變的非同質化代幣。其中一個動態 NFT 的例子是 Lamelo Ball 的 NFT,它會在每場比賽後記錄 Lamelo 的籃球數據。此外,還有八個金色 NFT,如果 Lamelo 贏得年度最佳新秀獎,NFT 的圖像就會變成金色。

這篇動態 NFT 教學是 Alchemy Road to Web3 系列的一部分,由 Chainlink 開發者關係團隊的一名成員主講。這篇教學使用 Alchemy 及 Chainlink,建立一個會依市場漲跌而在牛的圖片與熊的圖片之間切換的動態 NFT。

5. 開發 NFT 交易市場

NFT 交易市場是一個讓使用者能買賣及刊登非同質化代幣的網站。這篇 Alchemy Road to Web3 的教學使用 Alchemy、Hardhat 及 Pinata,將 NFT 交易市場部署到測試網。

6. 建立去中心化社群媒體應用程式

就像 2020 年的 DeFi 和 2021 年的 NFT 一樣,區塊鏈社群媒體應用程式有潛力引發 Ethereum 的大量主流關注。這篇去中心化社群媒體教學教學生如何使用 Apollo GraphQL、Aave 的 Lens protocol API、Polygon、MintKudos API 及 Lit protocol 來取得使用者個人檔案、整合 Proof-of-Knowledge NFT(PoK),並使用加密技術透過 Repl.it 部署社群媒體應用程式的前端網站。

7. 如何取得 Ethereum 上的最新區塊

區塊鏈開發者最基本必須會做的事情之一,就是從區塊鏈取得最新區塊。這篇教學涵蓋:

  1. 從命令列建立專案目錄
  2. 安裝 ethers.js
  3. 建立 index.js 檔案
  4. 使用 node 執行呼叫以取得最新區塊編號

8. 在 Ethereum 上傳送私人交易

私人交易是直接傳送給驗證者、而非傳送到全域 mempool 的交易。由於 Maximum Extractable Value(MEV)機器人會監聽 mempool 中的交易,傳送私人交易能幫助使用者避免遭到搶跑(frontrunning)。

這篇教學說明如何使用 Alchemy 的 MEV 保護功能來傳送私人交易。

9. 將智能合約部署到多個網路

多鏈應用程式是指部署在不同區塊鏈網路上的應用程式。由於每個網路都有其獨特的優勢、取捨與特定使用族群,將同一個智能合約部署到多條區塊鏈是一種常見的使用場景。

這篇教學說明如何使用 Alchemy、MetaMask 及 Hardhat,將合約部署到 Ethereum 的 Sepolia 測試網。只要切換網路的 RPC URL,同樣的步驟也能部署到其他網路,例如 Polygon Amoy。

10. 建立全端區塊鏈應用程式

這篇由 Dapp University 撰寫的教學,示範了如何使用 Solidity 智能合約及 JavaScript 建立全端區塊鏈應用程式。學生將學會如何將智能合約部署到區塊鏈,並建立客戶端應用程式。

這篇教學對初學者相當友善,因為所有內容都從零開始教起,並附有書面指南,如果你不想完全從頭開始,也提供了起始程式碼。

開始用最好的教學學習 Solidity

無論你是完全沒有程式設計經驗的新手,還是剛接觸 web3 開發,教學都是啟動你Solidity 開發者職涯的絕佳方式。

如果你對學習 Solidity 想採取更有系統的方式,Alchemy University 為期 7 週的 Solidity 開發者訓練營,是一門免費的 Ethereum 開發速成課程,涵蓋了你需要知道的一切內容。

這個重新設計的訓練營包含互動式程式設計挑戰、影片課程及教育性讀物,將幫助你加快成為 Solidity 開發者的腳步。

如果開發者對開發本身還完全陌生,Alchemy University 為期 3 週的 JavaScript 速成課程,是開始 Ethereum 訓練營之前很好的先修課程。

Background gradient

打造區塊鏈魔法

Alchemy 結合最強大的 Web3 開發者產品與工具,並提供資源、社群與卓越的支援。