第二章:开发环境准备

好,咱们正式开始动手了。在写第一行智能合约代码之前,得先把家伙事儿备齐。我见过太多新手一上来就急着写代码,结果环境配到一半卡住了,心态直接崩掉。别急,咱们一步步来。

2.1 安装 Node.js

Node.js 是整个开发环境的地基。说白了,没有它,后面那些工具全都跑不起来。我个人习惯用 LTS 版本,稳定,不容易踩坑。

下载地址: https://nodejs.org/(选择 LTS 版本)

安装完成后,打开终端(Windows 用 PowerShell 或 CMD,Mac 用 Terminal),输入以下命令验证:

node -v
npm -v

如果能看到版本号,比如 v18.17.09.6.7,那就说明装好了。我曾经遇到一个学员,装完 Node.js 后死活输不出版本号,最后发现是环境变量没配好。嗯,这里要注意——Windows 用户如果遇到这种情况,去系统环境变量里检查一下 PATH 有没有包含 Node.js 的安装路径。

小提示: 如果你用的是 Mac,我强烈建议用 nvm(Node Version Manager)来管理 Node.js 版本。这样以后切换版本会非常方便。安装命令:curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.3/install.sh | bash

2.2 安装 npm / yarn

装完 Node.js,npm 就自动带上了。npm 是 Node.js 的包管理器,用来安装各种依赖库。不过我个人更偏爱 yarn,因为它速度快,而且锁文件机制更可靠。

安装 yarn:

npm install -g yarn

验证安装:

yarn --version

你可能会问:「到底用 npm 还是 yarn?」我的建议是——团队项目用 yarn,个人小项目随意。我在一个 DeFi 项目里吃过 npm 的亏,依赖版本不一致导致部署到链上出了 bug,排查了整整两天。从那以后,但凡涉及区块链的项目,我都用 yarn。

特性 npm yarn
安装速度 较慢 较快(并行下载)
锁文件 package-lock.json yarn.lock(更可靠)
离线缓存 不支持 支持
安全性 一般 更好(校验完整性)

2.3 安装 Truffle 或 Hardhat 框架

这是重头戏。Truffle 和 Hardhat 都是以太坊开发框架,帮你编译、测试、部署智能合约。我个人更推荐 Hardhat,因为它更现代,调试体验更好。但 Truffle 也有它的优势,生态更成熟。

安装 Hardhat

mkdir my-dapp
cd my-dapp
npm init -y
npm install --save-dev hardhat

初始化项目:

npx hardhat init

你会看到几个选项:

  • Create a JavaScript project
  • Create a TypeScript project
  • Create an empty hardhat.config.js

我建议选 JavaScript 项目,对新手友好。选完后,Hardhat 会自动生成项目结构,包括 contracts/test/scripts/ 等目录。

安装 Truffle(备选)

npm install -g truffle
truffle init

两种框架选一个就行。我个人习惯用 Hardhat,但如果你之后要跟 Ganache 配合做本地测试,Truffle 会更顺手。你想想看,工具这东西,顺手最重要。

重要提醒: 无论选哪个框架,一定要确保 Node.js 版本在 16 以上。Hardhat 对 Node 18 的支持最好,我建议直接上 Node 18 LTS。

2.4 安装 MetaMask 钱包

MetaMask 是你和区块链交互的「浏览器」。没有它,你的 DApp 就没办法跟用户的钱包连接。

安装步骤:

  1. 打开 Chrome 浏览器,访问 Chrome 网上应用店
  2. 搜索「MetaMask」
  3. 点击「添加到 Chrome」
  4. 安装完成后,浏览器右上角会出现一个小狐狸图标

第一次打开 MetaMask,会引导你创建钱包。这里要注意:

  • 助记词一定要手写抄下来,存到安全的地方。 别截图,别存云盘。我见过太多人因为助记词丢了,几万美金的资产再也拿不回来。
  • 设置一个强密码,别用 123456 这种。

创建完成后,你会看到主网、Goerli 测试网等选项。开发阶段我们一般用测试网,别往主网里充真金白银。

避坑指南: 我曾经在测试网上部署合约时,不小心把私钥粘贴到了公共论坛上。虽然只是测试网,但那种感觉就像家门钥匙丢在大街上一样。记住:私钥和助记词,打死都不要告诉任何人。

2.5 验证环境是否就绪

装完这些工具后,咱们来做个快速验证。打开终端,进入你的项目目录,运行:

npx hardhat compile

如果看到类似 Compiled 1 Solidity file successfully 的提示,说明环境配好了。这时候你打开 MetaMask,切换到 Goerli 测试网,去水龙头领点测试 ETH,就可以开始写合约了。

嗯,到这里,开发环境就准备完毕了。下一章咱们会真正开始写智能合约,到时候你会觉得——原来 DApp 开发也没那么难嘛。