跳至内容
0%

如何开始在 Arbitrum 上开发

Alchemy team headshot

作者 Alchemy

发布于 2022年10月19日2 分钟阅读

Arbitrum 是一个以太坊二层区块链,使用乐观 rollup 技术,让开发者在 Ethereum 基础层区块链上运行 apps 时获得比原来更高的可扩展性和更低的 gas 成本,同时享有 Ethereum 一层的安全性。

如果你对学习如何在 Arbitrum 上进行开发感兴趣,这篇文章正适合你!在本指南中,我们将带你了解在 Arbitrum 网络上开始编码所需的步骤。

什么是 Arbitrum?

Arbitrum 是一个二层乐观 rollup 区块链,用于扩展以太坊主链,同时保持无需信任的安全性。虽然它基于 Ethereum 虚拟机(EVM),但 Arbitrum 采用了一种独特的设计,使其比 Ethereum 网络更具可扩展性且更易用。

此外,Arbitrum 智能合约与 EVM 兼容,这意味着它们可以与现有的 Ethereum 工具、钱包和应用配合使用。Arbitrum 是作为可用的 Ethereum 扩容方案之一而创建的,旨在实现低成本智能合约并解决交易时间过长的问题。

运行在 ArbOS 上的 Arbitrum 虚拟机,在 Arbitrum 链上智能合约的执行过程中承担记录保存、流量控制和执行监督的角色。

如何开始在 Arbitrum 上进行开发

在开始在 Arbitrum 上开发之前,理解该区块链的工作原理并配置好一些前置条件非常重要:

  1. Hardhat
  2. 一个 Alchemy 账户
  3. 一个 web3 钱包(例如 MetaMask、Apex 等)

1. 了解 Arbitrum 的工作原理

在开始在 Arbitrum 上开发之前,充分理解该平台的工作原理很重要。你可以阅读 Arbitrum 白皮书以了解更多技术细节。

根据创建并维护 Arbitrum 的团队 Offchain Labs 的说法,Arbitrum 的架构如下:左侧是链下的用户和服务提供者,右侧是由 Layer 1 和 Layer 2 组成的 Arbitrum 系统。

Arbitrum 是位于 Layer-1 Ethereum 链(橙色)之上的二层 rollup 方案(绿色)。

Arbitrum 架构示意图:作为 Layer-2 rollup 运行在 Ethereum Layer-1 链之上
来源:Offchain Labs

此外,Arbitrum 团队还创建了多种资源帮助开发者入门,包括平台概览和创建第一个智能合约的分步指南。

2. 下载 Hardhat(集成开发环境)

在 Arbitrum 上开发有两种方式:使用在线 IDE,或搭建本地开发环境。无论哪种方式,你都需要在开始前选择并配置一个 Solidity 开发用的 IDE

本文将使用本地开发环境 Hardhat 进行构建。安装完 Hardhat 后,创建一个 Hardhat 项目

3. 在 Alchemy 上创建一个 Arbitrum app

要部署智能合约,你需要一个 Arbitrum RPC 节点。幸运的是,你不需要自己运行 Arbitrum 节点,只需 免费注册 Alchemy,并在 Arbitrum-Goerli 测试网上创建一个 app。

注册完成后,按以下步骤操作:

  1. 点击 Dashboard
  2. 点击 "Create App"
  3. 为你的 app 起一个名字
  4. 选择 Arbitrum Nitro Goerli 测试网
  5. 然后点击 "Create App"

你的 app 应该会出现在 Alchemy Dashboard 中。

4. 从 Goerli faucet 获取测试 ETH

要在 Arbitrum-Goerli 测试网上与 Arbitrum 合约交互,你需要一些测试 ETH 和一个 Arb-Goerli RPC 端点

获取 Goerli ETH 最简单的方法是使用 faucet。

  1. 将 Arbitrum 添加到 MetaMask
  2. 前往 Goerli faucet
  3. 输入你的 Ethereum 地址
  4. 几分钟后你应该会在 MetaMask 钱包中收到 Goerli ETH

要检查你是否已从 faucet 收到 ETH,请进入 MetaMask 设置,在 Advanced 下选择 "Show test networks"。

如果你使用的是与 Arbitrum Nitro Testnet 兼容的 Goerli faucet,这里是如何将 Goerli 代币桥接到 Arbitrum Nitro

5. 编写、编译并部署你的智能合约

到这一步,你就可以开始编写智能合约了。按照 Alchemy 文档 中的步骤构建一个简单的 "Hello World" 智能合约。你也可以观看这个 Hello World 视频教程,学习如何编写、编译并部署 "Hello World" 智能合约。这个 github 仓库 包含视频中涉及的所有脚本。

写完合约后,使用 Hardhat 编译它,连接到一个 Ethereum 客户端(Ganache 或 Geth),然后使用 hardhat deploy 命令部署你的合约。

如果你想获得更多灵感,可以看看 Offchain Labs GitHub monorepo 中的演示示例,例如 Pet Shop dapp 和 Election dapp。

6. 与你的智能合约交互并提交到 Etherscan

创建完智能合约后,你还需要学习如何与智能合约交互才能让它发挥作用!观看这个视频教程,学习如何读取并与智能合约交互

该视频将带你完成以下步骤:

  • 创建一个 interact.js 文件
  • 更新你的 env 文件
  • 获取你的合约 ABI
  • 创建一个合约实例
  • 读取并更新 init 消息

完成后,你就可以将你的合约发布到 Etherscan 了。观看这个视频学习如何在 Etherscan 上验证你的合约

具体步骤包括:

  • 安装 hardhat-etherscan 插件
  • 修改 Etherscan 配置选项
  • 在 Etherscan 上验证智能合约

Arbitrum 上的所有交易都可以在 Arbitrum 区块浏览器 上查看。

7. 将你的智能合约与前端集成

创建智能合约并看到它发布到 Etherscan 还不是结束!你现在需要将你的智能合约与前端界面集成

该教程将涵盖以下步骤:

  • 克隆起始文件
  • 查看起始文件
  • 从智能合约读取数据
  • 设置一个 Ethereum 钱包
  • 将 MetaMask 连接到 UI
  • 实现 updateMessage 函数
  • 打造属于你自己的 dApp

恭喜!你刚刚在 Arbitrum 上开发出了自己的简单 dApp!🎉

自 Arbitrum 主网上线以来,越来越多的开发者一直在这条区块链上构建 Arbitrum 智能合约,而学习如何在 Arbitrum 上开发是成为一名全面发展的 Solidity 开发者的重要一步。

在将智能合约发布到 Arbitrum 主网之前,请记得在测试网上充分测试你的 dapp,并考虑聘请一家智能合约审计公司来检测合约中的漏洞。

Background gradient

构建区块链应用

Alchemy 将最强大的 Web3 开发者产品和工具与资源、社区及专业支持结合在一起。