☰
Solidity 从入门到精通:一份拒绝“从入门到放弃”的学习路径
2026/10/10 12:14:45 网站建设 项目流程

目录

为什么大多数 Solidity 教程没把你教明白

第一阶段:零基础到“能跑通”(第 1–2 周)

第二阶段:从“能跑”到“像样”(第 3–6 周)

第三阶段:安全思维与“攻击者视角”(第 7–12 周)

进阶方向:精通的分岔路

一份可执行的周计划

最后想说的


为什么大多数 Solidity 教程没把你教明白

如果你在搜索引擎里输入“Solidity 入门”,会得到上百个结果。从十分钟速成到上百集视频课,选择多到让人瘫痪。更麻烦的是,很多教程要么停留在“Hello World”级别,要么直接跳到复杂的 DeFi 协议源码,中间缺了最关键的“爬坡期”。

2026 年的 Solidity 学习生态已经比几年前成熟太多。工具链从 Hardhat 和 Foundry 的路线之争逐渐收敛,参考资源从零散博客变成体系化的官方文档和实战平台。但这不代表学习变得简单了——简单的是获取信息,困难的是筛选信息并保持正确的推进节奏。

这篇文章想做的,是给你一条经过验证的路径,以及每个阶段该盯住的关键资源。

第一阶段:零基础到“能跑通”(第 1–2 周)

这一阶段的核心目标只有一个:消除对智能合约的陌生感,建立“我能写”的信心。

不要一上来就装 Foundry 或 Hardhat。工具链配置消耗的精力,足够你写完前十个合约了。Remix IDE 是绝对正确的起点。浏览器打开remix.ethereum.org,左边写代码,右边点编译和部署,中间没有任何摩擦。

你需要掌握的基础概念其实就这些:

数据类型:uint和int、address、bool、string,以及最重要的mapping。mapping(address => uint256)是绝大多数合约的账本基础。

存储位置:理解storage、memory、calldata的区别,是写出高效合约的第一步。storage是链上永久存储,贵得离谱;memory是函数执行期间的临时空间;calldata是外部传入的只读参数,最便宜。

函数可见性:public、external、internal、private的区别,以及view和pure的语义。

错误处理:require是最常用的回滚机制,但 2026 年的主流做法已经在向Custom Error迁移,因为 Gas 效率更高。

这一阶段的实践任务很朴素:写一个能存能取的合约,写一个带白名单的投票合约,写一个最简化的 ERC-20 代币。不用追求“可升级”或“Gas 优化”,那些是第二阶段的事。

第二阶段:从“能跑”到“像样”(第 3–6 周)

这一阶段的转折点是:放弃“自己造轮子”的执念,学会站在 OpenZeppelin 的肩膀上。

OpenZeppelin 的合约库是智能合约领域的“标准答案”。生产环境里几乎没有人从零写 ERC-20 或 ERC-721,因为自己写的版本大概率会有安全漏洞。你的任务是读OpenZeppelin 的源码,理解它为什么这么写。

同时,你该迁移到本地开发环境了。2026 年的答案很清晰:先学 Foundry,需要时再补 Hardhat。Foundry 的核心优势是用 Solidity 写测试——你不用为了测试合约再去学 JavaScript 或 TypeScript。测试跑得快,而且自带 fuzz testing(模糊测试)和 gas snapshot(Gas 快照)。

这一阶段的核心练习材料有两个:

SpeedRunEthereum是 Scaffold-ETH 2 上面的实战课程,从最简单的 NFT 合约一路做到完整的 DEX 和多签钱包。每个挑战都配有实时更新的前端,你能直观看到合约状态的变化。按每周 5–10 小时的节奏,4–8 周可以完成核心挑战。

CryptoZombies虽然有些年头,但作为游戏化的 Solidity 入门仍然有效。它的价值在于用“打僵尸”的叙事把继承、接口、事件这些概念串起来,让你在不知不觉中写完几十个合约。

这一阶段结束时,你应该能独立完成:一个带白名单铸造的 NFT 合约、一个简单的质押合约(stake/unstake/claim rewards)、一个链上投票系统。

第三阶段:安全思维与“攻击者视角”(第 7–12 周)

如果你只学到第二阶段,你写的合约能跑,但大概率不安全。

智能合约开发的残酷之处在于:代码部署后不可修改,漏洞的代价是真金白银。Ethernaut 是你在这个阶段必须完成的训练。

Ethernaut 是 OpenZeppelin 维护的“黑客游戏”。每一关给你一个故意留有漏洞的合约,你的目标是“偷走”里面的以太或夺取控制权。难度从基础的“未保护的自毁函数”,逐步升级到重入攻击、delegatecall操控、随机数破解,最终到需要深入理解 EVM 底层机制的复杂利用。

完成 Ethernaut 后再去挑战Damn Vulnerable DeFi,那是面向 DeFi 协议的安全挑战,难度更高,但也更接近真实世界中出问题的场景。

这个阶段还有一个被很多人忽略但极其重要的内容:读真实的生产级代码。Uniswap V2 的合约是公认的“教科书级” Solidity 代码,简洁、清晰、几乎没有冗余。Morpho 的代码则展示了复杂的 DeFi 借贷逻辑如何在生产环境中组织。

进阶方向:精通的分岔路

到了这个阶段,“精通”的定义开始分化。有人往安全审计方向走,有人往DeFi 协议开发走,有人往Gas 极致优化走。三条路都需要一个共同的基础:理解 EVM 本身。

Yul 语言是 Solidity 的内联汇编层,也是理解 EVM 内存管理和操作码的入口。Solady 和 Solmate 这些 Gas 优化库的代码,如果你不懂 Yul,基本读不懂。

Foundry 的高级特性——尤其是 fork testing(分叉测试)和 invariant testing(不变量测试)——是专业开发者和业余爱好者的分水岭。你可以在本地 fork 主网状态,模拟真实环境下的复杂交互,这是 Hardhat 时代很难做到的。

Cyfrin Updraft的免费课程体系在 2026 年已经成为事实上的“进阶标准”。从 Foundry Fundamentals 到 Smart Contract Security,再到 Assembly and Formal Verification,覆盖了从“会写”到“会审”的完整链路。

一份可执行的周计划

如果你想知道“每周该花多少时间、做什么”,这里是一个经过验证的节奏:

第 1–2 周:Remix + 基础语法。每天 1–2 小时,写 3–5 个简单合约。完成《Solidity by Example》上的核心示例。

第 3–6 周:Foundry + OpenZeppelin。每周 5–10 小时,完成 SpeedRunEthereum 的前半部分挑战。开始读 OpenZeppelin 的 ERC-20 源码。

第 7–10 周:Ethernaut + 安全实践。每周 5–8 小时,把 Ethernaut 的关卡全部打通并写解题笔记。开始接触 Slither 这类静态分析工具。

第 11–14 周:选择一个方向深入。如果做 DeFi,精读 Uniswap V2;如果做安全,开始 Damn Vulnerable DeFi 并尝试审计自己写过的旧合约。

第 15 周以后:持续输入真实代码和持续输出。读一个协议源码,自己重写一遍核心逻辑,对比差异。参加审计竞赛或 CTF。教学是最好的学习。

最后想说的

Solidity 的学习曲线有一个奇怪的特点:入门不难,进阶也不难,难的是从“能写”到“能安全地写”之间的那道坎。这道坎没有捷径,只能通过大量阅读恶意利用案例、亲手复现攻击、以及在真实代码库中积累模式识别能力来跨越。

工具会变,从 Remix 到 Foundry 再到下一个什么框架。但底层的东西不会变:EVM 的内存模型、Gas 的经济学、以及“永远不要信任外部调用”的安全直觉。把这些基础打牢,工具只是顺手的事。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询