---
title: "如何开始在 Arbitrum 上开发"
description: "了解如何创建 Arbitrum Dapp"
---

# 如何开始在 Arbitrum 上开发

Arbitrum 是一个以太坊二层区块链，使用乐观 rollup 技术，让开发者在 Ethereum 基础层区块链上运行 [apps](https://www.alchemy.com/dapps/top/defi-dapps) 时获得比原来更高的可扩展性和更低的 gas 成本，同时享有 Ethereum 一层的安全性。

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

## **什么是 Arbitrum？**

[Arbitrum](https://www.alchemy.com/arbitrum?a=0c128a6d93) 是一个二层乐观 rollup 区块链，用于扩展以太坊主链，同时保持无需信任的安全性。虽然它基于 Ethereum 虚拟机（EVM），但 Arbitrum 采用了一种独特的设计，使其比 Ethereum 网络更具可扩展性且更易用。

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

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

## **如何开始在 Arbitrum 上进行开发**

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

1. Hardhat
1. 一个 Alchemy 账户
1. 一个 [web3 钱包](https://www.alchemy.com/overviews/web3-wallets)（例如 [MetaMask](https://www.alchemy.com/dapps/metamask)、Apex 等）

### **1. 了解 Arbitrum 的工作原理**

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

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

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

<ImageBlock
  src="https://media.alchemy.com/1704205409-how-arbitrum-works.jpg"
  alt="Arbitrum 架构示意图：作为 Layer-2 rollup 运行在 Ethereum Layer-1 链之上"
  width={1600}
  height={742}
  caption="来源：Offchain Labs"
/>

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

### **2. 下载 Hardhat（集成开发环境）**

在 Arbitrum 上开发有两种方式：使用在线 IDE，或搭建本地开发环境。无论哪种方式，你都需要在开始前选择并配置一个 [Solidity 开发用的 IDE](https://hardhat.org/hardhat-runner/docs/getting-started#overview)。

本文将使用本地开发环境 [Hardhat](https://hardhat.org/hardhat-runner/docs/getting-started#overview) 进行构建。安装完 Hardhat 后，[创建一个 Hardhat 项目](https://www.alchemy.com/docs/how-to-deploy-a-smart-contract-to-the-sepolia-testnet)。

### **3. 在 Alchemy 上创建一个 Arbitrum app**

要部署智能合约，你需要一个 [Arbitrum RPC 节点](https://www.alchemy.com/overviews/arbitrum-node)。幸运的是，你不需要自己运行 Arbitrum 节点，只需 [免费注册 Alchemy](https://dashboard.alchemy.com/?a=0c128a6d93)，并在 Arbitrum-Goerli 测试网上创建一个 app。

注册完成后，按以下步骤操作：

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

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

### **4. 从 Goerli faucet 获取测试 ETH**

要在 Arbitrum-Goerli 测试网上与 Arbitrum 合约交互，你需要一些测试 ETH 和一个 [Arb-Goerli RPC 端点](https://www.alchemy.com/chain-connect/chain/arbitrum-goerli)。

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

1. [将 Arbitrum 添加到 MetaMask](https://www.alchemy.com/docs/reference/arbitrum-api-quickstart#arbitrum-tutorials)
1. 前往 [Goerli faucet](https://goerlifaucet.com/)
1. [‍](https://goerlifaucet.com/)输入你的 Ethereum 地址
1. 几分钟后你应该会在 MetaMask 钱包中收到 Goerli ETH

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

如果你使用的是与 Arbitrum Nitro Testnet 兼容的 Goerli faucet，这里是[如何将 Goerli 代币桥接到 Arbitrum Nitro](https://www.alchemy.com/overviews/arbitrum-nitro-testnet)。

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

到这一步，你就可以开始编写智能合约了。按照 [Alchemy 文档](https://www.alchemy.com/docs/how-to-deploy-a-smart-contract-to-the-sepolia-testnet) 中的步骤构建一个简单的 "Hello World" 智能合约。你也可以观看这个 [Hello World 视频教程](https://www.youtube.com/watch?v=g73EGNKatDw)，学习如何编写、编译并部署 "Hello World" 智能合约。这个 [github 仓库](https://github.com/alchemyplatform/hello-world-tutorial) 包含视频中涉及的所有脚本。

写完合约后，使用 Hardhat 编译它，连接到一个 Ethereum 客户端（Ganache 或 [Geth](https://www.alchemy.com/overviews/what-is-a-geth-node-and-how-to-run-one)），然后使用 _hardhat deploy_ 命令部署你的合约。

如果你想获得更多灵感，可以看看 [Offchain Labs GitHub monorepo](https://github.com/OffchainLabs/arbitrum-tutorials) 中的演示示例，例如 Pet Shop dapp 和 Election dapp。

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

创建完智能合约后，你还需要学习[如何与智能合约交互](https://www.youtube.com/watch?v=sQJ-XQBzEuc)才能让它发挥作用！观看这个视频教程，学习[如何读取并与智能合约交互](https://www.youtube.com/watch?v=sQJ-XQBzEuc)。

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

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

完成后，你就可以[将你的合约发布到 Etherscan](https://www.alchemy.com/docs/best-practices-for-deploying-a-smart-contract-on-evm-mainnets-1) 了。观看这个视频学习[如何在 Etherscan 上验证你的合约](https://www.youtube.com/watch?v=x1a5lrW-9fo)。

**具体步骤包括：**

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

Arbitrum 上的所有交易都可以在 [Arbitrum 区块浏览器](https://arbiscan.io/) 上查看。

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

创建智能合约并看到它发布到 Etherscan 还不是结束！你现在需要[将你的智能合约与前端界面集成](https://www.alchemy.com/docs/best-practices-for-deploying-a-smart-contract-on-evm-mainnets-1)。

**该教程将涵盖以下步骤：**

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

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

自 Arbitrum 主网上线以来，越来越多的开发者一直在这条区块链上构建 Arbitrum 智能合约，而学习如何在 Arbitrum 上开发是[成为一名全面发展的 Solidity 开发者](https://www.alchemy.com/overviews/how-to-become-a-solidity-developer)的重要一步。

在将智能合约发布到 Arbitrum 主网之前，请记得在测试网上充分测试你的 dapp，并考虑聘请一家[智能合约审计公司](https://justjooz.com/best-smart-contract-auditors/)来检测合约中的漏洞。
