世界的过客

每个人获得的东西都恰好是他值得获得的东西

Solidity Dev Setup

Solidity的开发工具和环境有几种:Remix, HardHat,Foundry

Remix是很好的工具,初学者当然可以用了,Web IDE的优势就是打开就用。但是有几个问题,第一个是不够工程化不够高效,第二是多人协作不方便,其余比较主流比如VS Code + HardHat 提供了合约的开发,部署和测试等功能,最近又出现了Foundry基本类似于Hardhat, 但是最大的区别是测试以及Foundry的测试都使用Solidity编写,只要会Solidity就全搞定了。

对于我来说选择的自然是VS Code + Hardhat 的方式开发合约。先安装好VS Code(本身有的就不需要安装了),然后增加两个插件SoliditySolidity Extended 前者要选Nomic Foundation提供的这个是Hardhat官方提供的插件(直接点击即可)。

然后安装node,npm和npx(一般装了node就有),然后用npm安装hardhat: npm install --save-dev hardhat, 使用npx hardhat init 进行项目的初始化期间会问一堆的问题,根据个人情况(是否会Typescript),因为选择了Typescript,项目中的各种脚本和脚手架都是用Typescript编写的,当然合约还是Solidity。init之后的合约全部在contracts目录下。

当合约编写完成后使用npx hardhat compile编译会生成artifacts, cache和ignition三个文件目录。合约的 abi 和 bytecode 等元数据会自动生成存放在 artifacts, 部署是通过 Ignition 模块定义的, 如果你创建了一个 TypeScript 项目,还会生成绑定目录typechain-types

基本上就是这样了。更多自行阅读Hardhat文档