1. TOP
  2. ブロックチェーン開発
  3. Remixとbrowser-solidityの使い方

Remixとbrowser-solidityの使い方

Remixやbrowser-solidityの正しい使い方

Remix:browser-solidityはEthereum(イーサリアム)の独自トークンやスマートコントラクトを開発するためのシステムです。

コードの編集からブロックチェーンへのデプロイ(発行)ができる優れた統合開発環境です。プログラマーだけでなく、初心者の方でも簡単に使えるため人気があります。

使用するには2種類の方法があります。どちらも同じように使用できます。

  • インターネットブラウザーでの開発環境を使用する
  • PCにインストールしてローカル環境で構築する

インターネットブラウザでは、インストールの必要もありません。通常はこちらがお勧めです。

RemixではSolidityと呼ばれる言語を使用します。スマートコントラクトで最も利用される言語であり、JavaScriptに近い静的な言語です。

この記事ではRemix:browser-solidityの使い方を詳しく解説します。

Remixの使い方

Remixを使うには「Remix – Solidity IDE」にアクセスします。

インストールして使う場合は以下のURLからダウンロードしてください。

画面が表示されるとサンプル用のコードが記述されています。

サンプルコードが表示されている

コードの内容は選挙投票用のスマートコントラクトです。

新規ファイル

サンプルコードを削除して、新しいコード内容を書いていきます。

もしくは、左上の「+」ボタンをクリックして、新規作成でファイル名を記述します。これで新しいファイルを作成できます。

新規ファイルの作成ボタン

ファイルの名前を決める

コードの更新

コードの更新を手動でするか自動でするか選択

コードを記述したら内容を更新するために「Start to compile」をクリックします。

「Auto compile」にチェックを入れると自動で更新してくれます。但し、頻繁に自動更新されるため読み込みの待ち時間も発生します。

警告やエラー

コードの警告とエラー表示

コードのWarning(警告)やError(エラー)が表示される部分です。

Warningは黄色く表示されますが、そのままでもデプロイ(発行)は可能です。必要に応じてコードを修正してください。

エラーは赤く表示されて、コードを修正する必要があります。このままではデプロイはできません。

左上の各種ボタン

フォルダを開いたりGithubと接続できる各種メニューバー

  • 新規ファイル作成ボタン
  • フォルダを開くボタン
  • Githubと接続してコードを公開するボタン
  • 公開したGithubのコードを更新するボタン
  • 一括でファイルを保存するボタン
  • ローカルホストに接続するボタン

各種設定

右上の項目をクリックして、各種設定を行います。

Remixの各種設定を行う

Compile

コードを編集するための画面です。

トークンやスマートコントラクトを作成するためのコードエディタ

Run

作成したコードをデプロイ(発行)するための画面です。

ネットワークとの接続やデプロイする画面

Environment

開発環境を選択します。

メインネットやテストネット、プライベートネットに接続する

JavaScript VM

ローカルなプライベート環境です。ブロックチェーン上にデプロイ(発行)されない、プライベートな開発環境です。

Injected Web3

METAMASK(メタマスク)と接続します。

本番のパブリックブロックチェーンやテストネットブロックチェーンにデプロイ(発行)できます。

Etherscanにトランザクションが記載されて、独自トークンやスマートコントラクトが発行されます。

なお、パブリックチェーンにデプロイするには本物のETH手数料が必要です。十分にテストチェーンで開発をテストしてから使いましょう。

テストネットワークの使い方は関連記事を参考にしてください。

Web3 Provhder

Gethというプライベートネットで動く、ローカル環境と接続します。

Gethについては関連記事を参考にしてください。

Account

接続するアカウントを選択します。

接続アカウントとEthereumの残高

トークンやスマートコントラクトをデプロイするにはEthereumの手数料が掛かります。

そのためにはアカウントにはEthereumの保有が必要です。

Gas limit

ETHのガスリミットを設定します。初期設定では3000000です。

GASの消費量であるガスリミットの設定

特別な理由がない限り変更しないことをお勧めします。

Value

ETHのガス価格を設定します。

gasの価格設定をgweiでする

通常は初期設定のままにしてください。デプロイ時に自動で適性価格が算出されます。

不用意に低く設定し直すと、トランザクションが手詰まりを起こしたり失敗する原因になります。

Deploy

作成したコードをデプロイ(発行)するためのボタンです。

スマートコントラクトのデプロイ発行ボタン

At Address

コントラクトアドレスの照会ボタン

エディタにデプロイされたトークンやスマートコントラクトのコードを貼り付けて、At Addressにコントラクトアドレスを入力して「At Address」をクリックします。

エディタにトークンのコードを貼り付けてアドレスを呼び出す

トークンやスマートコントラクトの各種設定項目や情報が一覧で表示されます。

トークンに関する様々な内容が一覧表示される

settings

一般設定やバージョンを切り替えます。

browser-solidityのバージョンや各種設定項目

Solidity version

browser-solidityのバージョンを切り替えることができます。基本的には安定板のcommitのみを選択します。nightlyは開発段階であり不安定です。

remixのバージョンを過去や安定板に切り替える

なお、適切なバージョンはコードの冒頭に記載されています。

適切なRemixのバージョン情報

例えば、「pragma solidity ^0.4.18;」であれば、バージョンは^0.4.18にするか0.4.18以上0.5未満にします。

General settings

各種設定項目です。

コードの最適化や細かい設定を行う

  • 常にEthereum VMを使用する
  • テキストの折り返し
  • 最適化を有効にする
  • パーソナルモードを有効にする

この中で重要となるのがコードの最適化項目です。項目にチェックを入れるとコードを最適化してくれます。何も変化がないこともあれば、最適化によって良くなる場合もあります。

なお、最適化によりバグが発生することもあるのでコードのどの部分が変わったか、チェックやテストネットを利用してエラーがないか確かめましょう。

まとめ

Ethereumのトークンやスマートコントラクトを開発するのであれば、Remixは必須のシステムです。

この記事では基本的な項目部分に限って説明をしました。他にも設定項目がありますが、通常であれば必要ない部分もあるため説明を割合しています。

なお、Remixは頻繁にデザインや項目が変わっていきます。大体、半年もすると項目の名前や機能が一新されていることもあるので、この記事は現時点での参考としてください。