---
title: "10 个最佳 Solidity 开发教程精选(2025)"
description: "通过这些顶级教程学习 Solidity"
---

# 10 个最佳 Solidity 开发教程精选(2025)

[Solidity](https://www.alchemy.com/overviews/solidity) 是一种用于编写智能合约的 web3 编程语言。Solidity 是为 Ethereum 区块链创建的，用 Solidity 编写的程序运行在 Ethereum Virtual Machine（EVM）上。然而，Solidity 并不是一门广为人知的编程语言，因此许多开发者 [通过教程学习 Solidity](https://www.alchemy.com/overviews/learn-solidity)。

## **为什么教程适合学习 Solidity？**

与通常时间较长、有固定安排、需要同步进行的课程不同，教程篇幅短、可自主安排进度、不要求同步学习。这种可以自主学习 Solidity、不限教学来源、也没有截止日期压力的灵活性，是探索 Solidity 的好方式。

[学习 web3](https://www.alchemy.com/overviews/how-to-learn-web3-development) 并不是一件容易的事。教程不是从网络上零散收集的信息，而是通过有引导的分步过程，让掌握新知识变得更容易。Solidity 教程涵盖许多基础概念，例如如何安装不同的 [集成开发环境（IDE）](https://www.alchemy.com/overviews/solidity-ide)、编写智能合约，以及构建常见用例的最小可行产品（MVP），比如开发一个 [NFT 交易市场](https://www.alchemy.com/dapps/best/nft-marketplaces)。

### **1. Hardhat 新手教程**

**Hardhat** 是一套用于编写智能合约的开发者工具，是 Solidity 开发者必须了解的重要工具。这份 [Hardhat 新手教程](https://hardhat.org/tutorial) 需要一些 Javascript、终端使用、Github 使用以及智能合约基础方面的背景知识，但它同时也提供了学习这些前置内容所需的资源。

该教程涵盖：

1. 为 Ethereum 开发搭建 Node.js 环境
1. 创建并配置一个 Hardhat 项目
1. 实现一个代币的 Solidity 智能合约基础
1. 使用 Hardhat 为合约编写自动化测试
1. 使用 Hardhat Network 通过 console.log\(\) 调试 Solidity
1. 将合约部署到 Hardhat Network 和 Ethereum 测试网

Hardhat 是创建和 [调试智能合约](https://www.alchemy.com/overviews/solidity-console-log) 的一个很好的环境。这份 Hardhat 教程通过清晰的说明和代码片段，讲解了 Solidity 开发的基础知识。

### **2. 使用 Alchemy 创建 Polygon 智能合约**

这份由 **Polygon** 团队提供的教程教学生如何使用 Alchemy 开发者平台 [创建 Polygon 智能合约](https://docs.polygon.technology/docs/develop/alchemy/)。该教程涵盖以下步骤：

1. 在 Alchemy 上创建一个 Polygon 应用开始入门
1. 用 Metamask 创建一个 [Polygon 钱包](https://www.alchemy.com/dapps/list-of/software-wallets-on-polygon) 地址
1. 向钱包添加 MATIC 余额
1. 使用 Hardhat 和 Ethers.js 编译并部署项目
1. 在 Alchemy 平台上查看合约状态

这是一份很有价值的教程，因为它不仅能帮助你开始在 Polygon 上部署智能合约，还能教会你 Alchemy、Hardhat 和 [ethers.js](https://www.alchemy.com/dapps/ethers-js) 等重要的 web3 开发者工具。

对于熟悉一般编程原理的人来说，这份教程内容相当深入，也适合初学者。

### **3. 用 OpenSea 开发你的第一个 NFT 智能合约**

这份 **[OpenSea](https://www.alchemy.com/dapps/opensea)** 教程讲解了如何使用 Solidity、Hardhat、Ethers.js、[MetaMask](https://www.alchemy.com/dapps/metamask) 和 Alchemy 创建你的第一个 NFT 智能合约。Solidity 开发者需要知道如何使用各种工具，而这份教程提供了在制作 NFT 时使用一些最好的 web3 工具的机会。

该教程从如何搭建开发环境开始，最后给出关于验证以及进一步改进代码的使用建议。完成后的教程代码也发布在 Github 上，供你完成后参考，或在遇到困难时查阅。

### **4. 创建一个动态 NFT**

动态 NFT 是一种图像和元数据会根据链上及链下数据发生变化的非同质化代币。一个动态 NFT 的例子是 Lamelo Ball 的 NFT，它会在每场比赛后记录 Lamelo 的篮球数据。此外还有八个金色 NFT，如果 Lamelo 获得最佳新秀，这些 NFT 的图案就会变成金色。

这份 [动态 NFT 教程](https://www.alchemy.com/docs/how-to-send-value-from-within-a-smart-contract-using-solidity) 是 Alchemy 的 Road to Web3 系列的一部分，由 [Chainlink](https://www.alchemy.com/dapps/chainlink) 开发者关系团队的一名成员主讲。该教程使用 Alchemy 和 Chainlink 创建一个动态 NFT，其图案会根据市场涨跌在牛市图片和熊市图片之间切换。

### **5. 开发一个 NFT 交易市场**

NFT 交易市场是一个用户可以买卖、上架非同质化代币的网站。这份来自 Alchemy Road to Web3 的教程使用 Alchemy、Hardhat 和 [Pinata](https://www.alchemy.com/dapps/pinata) 在 [Goerli 测试网上部署一个 NFT 交易市场](https://www.alchemy.com/docs)。

### **6. 构建一个去中心化社交媒体应用**

就像 2020 年的 DeFi 和 2021 年的 NFT 一样，区块链社交媒体应用有潜力引发大量主流对 Ethereum 的兴趣。这份 [去中心化社交媒体教程](https://www.alchemy.com/docs) 教学生如何使用 Apollo [GraphQL](https://www.alchemy.com/dapps/graphql)、Aave 的 Lens 协议 API、Polygon、MintKudos API 和 Lit protocol 来获取用户资料、集成 Proof-of-Knowledge NFT（PoK），并使用加密技术通过 Repl.it 部署一个社交媒体应用的前端网站。

### **7. 如何获取 Ethereum 上的最新区块**

区块链开发者需要做的最基础的事情之一，就是 [从区块链获取最新区块](https://www.alchemy.com/docs/how-to-get-the-latest-block-on-ethereum)。该教程涵盖：

1. 从命令行创建一个项目目录
1. 安装 Alchemy SDK
1. 创建一个 index.js 文件
1. 使用 node 运行调用以获取最新区块号

### **8. 在 Ethereum 上发送一笔私密交易**

私密交易是指直接发送给验证者、而不是发送到全局内存池（mempool）的交易。由于 Maximum Extractable Value（MEV）机器人会监听内存池中的交易，发送私密交易有助于保护用户免受抢跑（frontrunning）攻击。

这份教程讲解了如何 [使用 Alchemy SDK 和 Flashbots 发送一笔私密交易](https://www.alchemy.com/docs/reference/mev-protection)。

### **9. 将智能合约部署到多个网络**

多链应用是指部署在不同区块链网络上的应用。由于每个网络都有各自独特的优势、权衡取舍和细分用户群体，[将同一个智能合约部署到多条区块链上](https://www.alchemy.com/docs/how-to-deploy-a-smart-contract-to-the-sepolia-testnet) 是一种常见用例。

这份教程讲解了如何使用 Alchemy、MetaMask 和 Hardhat 部署多链合约，将合约部署到 Ethereum 的 Goerli 测试网和 Polygon 的 Mumbai 测试网。

### **10. 构建一个全栈区块链应用**

这份来自 **Dapp University** 的教程展示了如何使用 Solidity 智能合约和 Javascript [创建一个全栈区块链应用](https://www.youtube.com/watch?v=CgXQC4dbGUE)。学生将学习如何将智能合约部署到区块链上，并构建一个客户端应用。

这份教程非常适合初学者，因为所有内容都是从零开始讲解的，并配有书面指南，如果你不想完全从零开始，还提供了初始代码。

## **通过最好的教程开始学习 Solidity**

无论你是完全不懂编程，还是刚接触 web3 开发，教程都是启动你的 [Solidity 开发者职业生涯](https://www.alchemy.com/overviews/solidity-developer) 的好方式。

如果你想以更系统的方式学习 Solidity，Alchemy University 为期 7 周的 Solidity 开发者训练营是一个 [免费的 Ethereum 开发速成课程](https://university.alchemy.com/?a=2de3c03a16)，涵盖了你需要了解的一切内容。

这个重新设计的训练营配有互动编程挑战、视频课程和教学阅读材料，将帮助你 [加速成为一名 Solidity 开发者的旅程](https://www.alchemy.com/overviews/how-to-become-a-solidity-developer)。

如果开发者完全没有开发经验，Alchemy University 的 **3 周 JavaScript 速成课程** 是开始 Ethereum 训练营之前很好的先修课程。
