- Learn what a smart contract is
- Solidity basic syntax
- Tools & Frameworks
- Node.js & Javascript & ES & CommonJS
- TypeScript (Optional)
- Hardhat
- OpenZeplin Contracts
- ethers.js
- ERC20
- ERC721 & ERC1155
- EVM
- Solidity + Hardhat + Ethers
熟悉 Solidity 语法和数据结构,能使用 hardhat 完成智能合约的自动化测试、优化、部署、交互和 SDK 封装。
- Openzipplin + Upgradeable
熟悉 Openzipplin 的所有库文件,能够完成可升级合约的部署和升级。
- Smartcontract Apps
熟悉市面上主流的智能合约项目的实现:dex(uniswap、curve)、lend(conpound、aave)、skating、oracle(chainlink)、bridge,能完成经典项目的合约改写和部署。
- Inline Assembly + Gas Used
熟悉内联汇编,清楚智能合约执行过程的 GAS 消耗,能对智能合约做最大程度的 GAS 优化。
- Ethereum Improvement Proposals
熟悉主流的 EIP 标准,能跟进 EIP 提案的进度,并撰写提案的分析。
- Smartcontract Attack
熟悉市面上发生的智能合约攻击事件,对新出现的智能合约安全事件进行追踪,能对智能合约的从底层到业务上的安全风险进行评估和预防。
- Maximal Extractable Value + Flashbots
熟悉 MEV 机制,了解 flashbots 等 MEV 提取工具,能够对链上交易策略进行规划。
- Solidity Update
熟悉 Solidity 各个版本之间的区别,能跟进 Solidity 版本更新。
- Solidity Compiler
熟悉 Solidity 编译成字节码的步骤,能根据 bytecode 反推出智能合约的执行逻辑。
- Ethereum Virtual Machine
熟悉智能合约在 EVM 上执行的原理,能对区块链做 EVM 兼容。