基于 Solidity、Hardhat、OpenZeppelin 迈向 Web3.0
Solidity
是一款以由以太坊(ETH,Ethereum)开源社区推出的面向对象的静态程序设计语言,主要用于在
Web 3.0 世界创建智能合约,其语法特性受到了
C++、Python、JavaScript
等编程语言的影响。支持继承、库、复杂的用户自定义类型以及其它特性。官方推荐在生产环境撰写以太坊智能合约的时候,总是使用最新的
Solidity 版本,从而获得安全修复以及各种新特性,本篇文章撰写时 Solidity
最新的生产环境版本为 v0.8.24
。
除了 Solidity 的各种常用语言特性之外,还会介绍一系列 Web 3.0 开发过程当中,所经常使用的第三方开源项目。其中 Hardhat 是一个用于编译、部署、测试、调试以太坊应用的开发环境,而 Ganache 则是一款用于开发测试 dApps(Decentralized Applications)的本地区块链应用。除此之外,OpenZeppelin 的 Contract 则是一款用于开发安全智能合约的库,提供有 ERC20 和 ERC721 的标准实现,以及灵活的的权限方案,乃至于各种常用的工具组件。