如果你是第一次接触智能合约开发,可能会有些紧张:我需要配置复杂的开发环境吗?我需要安装很多工具吗?别担心,这正是我们从 Remix 开始的原因。
Remix 是一个运行在浏览器中的集成开发环境(IDE),这意味着你不需要安装任何软件,只需要打开浏览器,就可以立即开始编写你的第一个智能合约。对于初学者来说,Remix 是开发智能合约的最佳选择,它让你可以专注于学习 Solidity 语言本身,而不用被复杂的环境配置所困扰。
在这一节中,你将学会:
让我们开始吧!
Remix 对初学者来说,是开发智能合约的最佳开发集成环境(IDE),它无需安装,可以直接快速上手。 Remix 是在以太坊上构建的最简单的开发工具,并且拥有大量插件来扩展其体验。
Remix 可帮助我们直接在浏览器中编写 Solidity 代码,并提供用于测试、调试和将智能合约部署到区块链的工具,除此之外,Remix 还提供:
代码提示补全,代码高亮
代码警告、错误提示
运行日志输出
代码调试
Remix 开箱即用,你可以打开 Remix 网站:https://remix.ethereum.org/ , 进入到 Remix IDE:

Remix 包含 4 个区域,上图用 4 个框分别标记了
功能切换:不同图标对应不同的功能,选中不同的功能,功能操作 也会跟随变化功能操作:各种功能展示与使用文件编辑:代码编辑的地方控制台/日志区:显示与合约交互的结果,也可以输入命令。Solidity 是一门编译型高级语言,需要经过编译、部署才能运行。
下面我们使用 Remix 探索新建合约、合约代码编写、编译、部署,调用合约的完整过程。
在文件浏览器界面有一个“Create”,按钮,如下操作:

我们创建一个新的合约“Create new file” ,并在随后将合约命令为 counter.sol 。
当处于文件编辑功能时,功能操作区域显示的是文件浏览器,我们选中 counter.sol 文件,在右侧文件编辑区域输入在上一节认识以太坊 的 Counter 合约代码
//SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;
contract Counter {
uint counter;
constructor() {
counter = 0;
}
function count() public {
counter = counter + 1;
}
function get() public view returns (uint) {
return counter;
}
}
这是一个简单的计数器合约,这个智能合约的作用是在区块链上存储一个计数器变量 counter, counter 值将会被永久保存在区块链上。
count()函数让计数器加1,get()函数用来获取计数器值。
智能合约不需要编写入口方法(如main方法),每一个函数都可以被单独调用。
其实编译器会帮助合约生成main入口函数,EVM 在入口函数里用函数选择器去匹配调用的函数。
输入完代码后,你应该看到如下图:

Solidity 是一门编译型语言,代码编写之后,需要对代码进行编译。
切换到编译功能, 选择编译器版本,进行编译。

我们也可以勾选上自动编译,这样代码编辑时,会自动编译,合约编译成功后,会输出两个重要的内容: ABI (合约接口描述) 和 Bytecode字节码。
ABI是 Application Binary Interface,即应用程序二进制接口,ABI 用来描述当前合约的所有接口,当我们与合约交互时,就需要使用 ABI。Bytecode是部署合约所需的字节码(也称为创建时字节码),部署合约时,就是把该字节码作为交易的输入数据发送链上。
接下来,就可以把合约部署到链上了。一个正式的产品推荐的部署流程是:
一切 OK 后部署在主网
Remix 提供多种部署环境:

Remix VM 是 Remix 提供的模拟网络环境: Browser extension : 也可以通过钱包插件(如 Metamask )连接到区块链网络进行部署 DEV: 可以连接到本地开发环境模拟的节点网络。
在这里,我们也先部署到模拟环境,然后部署到测试网络。
环境(ENVIRONMENT)一栏选择 Remix VM(Osaka) ,Remix VM 表示Remix 在浏览器提供的一个模拟环境,Osaka 是以太坊主网的一个版本号,然后点击“Deploy” 部署:

在部署功能操作区,还有一些设置:如选择使用账号、设置交易 GasLimit、选择发送到合约金额、选择要部署的合约(默认选择当前编辑的合约文件)。
Remix VM 会为我们提供 10 个账号,每个账号有 100 ETH 。
通常这些都有默认值,刚开始学时时我们使用默认值即可。
点击部署时,会发起一笔 创建合约交易, 交易完成后,会在链上生成一个合约地址, 同时在右下方控制台/日志区看到交易详情。

由于这个部署交易是在模拟环境下进行的,因此这个交易是即时完成的,同时使用的账号和消耗的 Gas 均是模拟的,下面我们部署到以太坊测试网 Sepolia
如果我们暂时只想学习 Solidity 语法,可以跳过这一节,继续使用 Remix VM 进行学习。等熟悉合约开发后,再回来尝试部署到真实网络。
要将合约部署到真实的区块链网络,你需要一个钱包来管理账户和支付 Gas 费用。
MetaMask 安装与设置
完成上述设置后,就可以开始部署了。
步骤 1:连接 MetaMask
在 Remix 的环境选项中,选择 Injected Provider - MetaMask:

Remix 会自动加载 MetaMask 当前选择的网络。上图显示的是 Sepolia,因为 MetaMask 当前连接的是 Sepolia 测试网。
下图是 MetaMask 的钱包界面:

步骤 2:部署合约
点击"Deploy"按钮,MetaMask 会弹出交易确认对话框:

这个对话框显示:
点击"确认"后,MetaMask 会对这笔交易进行签名并发送到 Sepolia 网络。
步骤 3:等待交易确认
与模拟环境不同,真实网络上的交易需要矿工打包确认:

✅ 恭喜!你已经成功将合约部署到真实的区块链网络上了!
合约部署后,在功能区的下方会出现智能合约部署后的地址以及合约所有可以调用的函数,如下图:

Remix里用橙色按钮来这个动作会修改区块链的状态,蓝色按钮则表示调用仅仅是读取状态。点击上方的count和get两个按钮,就可以调用对应的合约函数。
点击count时,会发起一笔交易,交易打包后,计数器变量加1:

点击get可以获得当前计数器的值。用户可以自己验证一下。
在这一节中,我们学习了智能合约开发的完整流程:
✅ Remix IDE:浏览器中的开发环境,无需安装任何软件 ✅ 合约开发流程:编写 → 编译 → 部署 → 调用 ✅ 两种部署方式:
推荐的学习路径:
现在你已经掌握了开发环境的使用,可以开始学习 Solidity 语法了!下一节我们将深入了解合约的代码结构。