Ethereum入門 (3) - Remix
「Remix」の使い方をまとめました。
前回
1. Remix
「Remix」は、Ethereumのスマートコントラクトを開発するための統合開発環境です。ブラウザ上で動作します。コードは、JavaScriptに似た言語である「Solidity」で記述します。
以下のURLにアクセスして、「Remix」を起動します。
2. Remixの画面構成
「Remix」の画面構成は、次のとおりです。
「ファイル」タブのボタンの機能は、次のとおりです。
3. サンプルコードの実行
サンプルコードの実行手順は、次のとおりです。
(1) 「アイコンパネル」で「ファイル」を選択し、「サイドパネル」で「1_Storage.sol」を選択。
「Remix」には、次の3つのサンプルコードが用意されています。
「1_Storage.sol」は、変数「number」に値を格納および取得するコードになります。
// SPDX-License-Identifier: GPL-3.0
pragma solidity >=0.7.0 <0.9.0;
/**
* @title Storage
* @dev 変数に値を格納および取得
* @custom:dev-run-script ./scripts/deploy_with_ethers.ts
*/
contract Storage {
uint256 number;
/**
* @dev 変数に値を格納
* @param num 格納する値
*/
function store(uint256 num) public {
number = num;
}
/**
* @dev 変数から値を取得
* @return 取得する値
*/
function retrieve() public view returns (uint256){
return number;
}
}
(2) 「アイコンパネル」で「コンパイル」を選択し、「サイドパネル」で「Comple 1_Storage.sol」を押す。
(3) 「アイコンパネル」で「ビルド & 実行」を選択し、「サイドパネル」で以下を選択し、「Deploy」ボタンを押す。
「Remix VM (London)」は、ブラウザ上のサンドボックスなブロックチェーン環境です。独自の「ブロックチェーン」であり、リロードするたびに古いチェーンがクリアされ、新しいブロックチェーンが開始されます。
(4) 「サイドパネル」を下にスクロールし、「Deploy Contracts」を操作。
変数の値を格納する「store」と変数の値を取得する「retrive」を利用できます。
「Deploy Contracts」を操作するたびに、ガス代を払うため、Accountsのetherが減ります。
【おまけ】 「デプロイ & 実行」の設定
◎ ENVIRONMENT
デプロイ先となるネットワークを選択します。
◎ Account
現在の環境に関連付けられているアカウントのリスト (および残高)。「Remix VM」では、10のアカウントから選択できる。「MetaMask」で「Injected Web3」を使用している場合は、「MetaMask」でアカウントを変更する必要がある。
◎ Gas Limit
Remixで実行するトランザクションで許可するガス限度額。
◎ Value
Remixで実行するトランザクションで送金するETH。トランザクション実行後に0にリセットされる。