コンテンツへスキップ
0%

Arbitrumで開発を始める方法

Alchemy team headshot

執筆者 Alchemy

2022年10月19日 公開読了時間 1 分

ArbitrumはEthereumのレイヤー2ブロックチェーンで、オプティミスティックロールアップを使用することで、Ethereumのベースレイヤーブロックチェーン上でアプリを実行するよりも高いスケーラビリティと低いガスコストを開発者に提供しつつ、Ethereumのレイヤー1セキュリティの恩恵を受けています。

Arbitrumの開発方法を学びたい方には、この記事が最適です。このガイドでは、Arbitrumネットワーク上でコーディングを始めるために必要な手順を説明します。

Arbitrumとは何か

Arbitrumは、トラストレスなセキュリティを保ちながらEthereumメインチェーンのスケーリングを助けるレイヤー2オプティミスティックロールアップブロックチェーンです。Ethereumの仮想マシン(EVM)をベースにしていますが、ArbitrumはEthereumネットワークよりもはるかにスケーラブルで使いやすい独自の設計を提供しています。

さらに、Arbitrumのスマートコントラクトは EVM互換であり、既存のEthereumツール、ウォレット、アプリと連携します。Arbitrumは、低コストのスマートコントラクトを実現し、長いトランザクション時間の問題に対処するためのEthereumスケーリングソリューションの1つとして作られました。

ArbOS上で動作するArbitrum Virtual Machineは、Arbitrumチェーン上でのスマートコントラクトの実行に対して、記録係、交通整理役、そして執行役としての役割を果たします。

Arbitrumでの開発を始める方法

Arbitrumでの開発を始める前に、ブロックチェーンの仕組みを理解し、いくつかの前提条件を設定しておくことが重要です:

  1. Hardhat
  2. Alchemyアカウント
  3. web3ウォレット(例:MetaMask、Apexなど)

1. Arbitrumの仕組みを理解する

Arbitrumでの開発を始める前に、プラットフォームの仕組みをよく理解しておくことが重要です。技術的な詳細については、Arbitrum Whitepaperを読むことができます。

Arbitrumを開発・維持しているチームであるOffchain Labsによると、Arbitrumのアーキテクチャは以下の通りです:ユーザーとサービスプロバイダーは左側のオフチェーン部分に属し、右側にはレイヤー1とレイヤー2から成るArbitrumシステムがあります。

Arbitrumは、レイヤー1のEthereumチェーン(オレンジ)の上に位置するレイヤー2ロールアップソリューション(緑)です。

Ethereumレイヤー1チェーンの上に構築されたレイヤー2ロールアップとしてのArbitrumアーキテクチャ図
出典:Offchain Labs

さらに、Arbitrumチームは、プラットフォームの概要や最初のスマートコントラクト作成のステップバイステップガイドなど、開発者が始めるためのいくつかのリソースを作成しています。

2. Hardhat(統合開発環境)をダウンロードする

Arbitrumでの開発方法は2通りあります:オンラインIDEを使用する方法と、ローカル開発環境を構築する方法です。いずれの場合も、始める前にSolidity開発用のIDEを選択し、設定する必要があります。

この記事では、ローカル開発環境であるHardhatを使って構築します。Hardhatのインストールが終わったら、Hardhatプロジェクトを作成してください。

3. AlchemyでArbitrumアプリを作成する

スマートコントラクトをデプロイするには、Arbitrum RPCノードが必要です。幸い、自分でArbitrumノードを実行する必要はありません。代わりにAlchemyに無料でサインアップし、Arbitrum-Goerliテストネット上でアプリを作成できます。

サインアップが完了したら、以下の手順に従ってください:

  1. Dashboardをクリック
  2. 「Create App」をクリック
  3. アプリの名前を選択
  4. Arbitrum Nitro Goerliテストネットを選択
  5. 「Create App」をクリック

アプリがAlchemy Dashboardに表示されるはずです。

4. Goerliフォーセットからテスト用ETHを取得する

Arbitrum-GoerliテストネットでArbitrumコントラクトとやり取りするには、テスト用ETHとArb-Goerli RPCエンドポイントが必要です。

Goerli ETHを取得する最も簡単な方法はフォーセットを利用することです。

  1. MetaMaskにArbitrumを追加
  2. Goerliフォーセットにアクセス
  3. Ethereumアドレスを入力
  4. 数分以内にMetaMaskウォレットにGoerli ETHが届くはずです

フォーセットからETHを受け取ったかどうかを確認するには、MetaMaskの設定を開き、「詳細設定」の下にある「テストネットワークを表示」を選択してください。

Arbitrum Nitro Testnetと互換性のあるGoerliフォーセットを使用している場合は、GoerliトークンをArbitrum Nitroにブリッジする方法を参照してください。

5. スマートコントラクトの記述、コンパイル、デプロイ

ここまで来たら、いよいよスマートコントラクトを書き始めることができます。Alchemyのドキュメントの手順に従って、シンプルな「Hello World」スマートコントラクトを構築してください。また、「Hello World」スマートコントラクトの記述、コンパイル、デプロイ方法についてのHello Worldビデオチュートリアルも参照できます。このgithubリポジトリには、動画で扱われているすべてのスクリプトが含まれています。

コントラクトの記述が終わったら、Hardhatを使ってコンパイルし、Ethereumクライアント(GanacheまたはGeth)に接続し、_hardhat deploy_コマンドを使ってコントラクトをデプロイしてください。

さらにインスピレーションが欲しい場合は、Pet Shop dappやElection dappなどのデモ例が掲載されているOffchain Labs GitHub monorepoをぜひご覧ください。

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開発者向けプロダクトとツールを、豊富なリソース、コミュニティ、そして卓越したサポートと組み合わせて提供します。