我在入门以太坊智能合约开发时,首先我就面临了一个选择,Hardhat Vs Truffle Vs Remix,我应该选择哪个开发工具。我就在谷歌上搜索很多对比,其中霍利维尔·瓦尔迪兹 的 《Hardhat Vs Truffle Vs Remix - Which Is The Best For Blockchain Development?》
这篇文章很及时的帮助了我,并且OpenZeppelin、Aave、BitGo、1inch等都在使用该开发工具,而且我在深入了解官方文档后发现文档整体很清晰并且有条理,而我又有一定的前端开发经验,所以在开发工具的选型上我选择了 Hardhat 。如果你没有前端经验,希望在前期学习的时候更关注合约本身,那么我会推荐 Remix 作为前期学习的开发工具。
这是我基于 Hardhat 官方教程写的第一篇以太坊合约和 dApp 开发指南,未来我也会持续分享所学。
首先 Hardhat 是基于 JavaScript 编写的,所以我们首先需要安装 Node.js 环境。
如果你已经安装了 Node.js 你可以跳过这个部分。如果没有,接下来会介绍如何在 Ubuntu、MacOS和 Windows 上安装它。
将以下命令复制粘贴到终端:
sudo apt update sudo apt install curl git curl -sL https://deb.nodesource.com/setup_16.x | sudo -E bash - sudo apt install nodejs
确保你已经安装了 git ,如果没有安装可以参考 atlassian 写的 《Install Git》。
在 MacOS 上安装 Node.js 有多种方法。我选择了使用 Node 版本管理器(nvm)。将以下命令复制粘贴到终端:
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash nvm install --lts nvm use stable nvm alias default stable npm install npm --global # 升级 npm 到最新版本
Windows 可以直接到 Node.js 官网,下载对应的安装包即可完成安装。
我们将使用 npm CLI 来安装 Hardhat。
打开终端并运行以下命令:
mkdir hardhat-tutorial cd hardhat-tutorial npm init --yes npm install --save-dev hardhat
安装 Hardhat 的过程中会安装 Ethereum JavaScript 依赖项,所以请耐心等待。
在安装 Hardhat 的同一目录下运行:
npx hardhat
使用键盘选择 Create an empty hardhat.config.js 并按下回车键。
$ npx hardhat 888 888 888 888 888 888 888 888 888 888 888 888 888 888 888 8888888888 8888b. 888d888 .d88888 88888b. 8888b. 888888 888 888 "88b 888P" d88" 888 888 "88b "88b 888 888 888 .d888888 888 888 888 888 888 .d888888 888 888 888 888 888 888 Y88b 888 888 888 888 888 Y88b. 888 888 "Y888888 888 "Y88888 888 888 "Y888888 "Y888