イーサリアムのスマートコントラクトを構築できる言語、Solidityの「Hello World!」を、ブラウザベースの開発環境(IDE)であるRemix (Browser-Solidity)を利用して実装してみます。
RemixはGithub(ethereum/browser-solidity)からダウンロードしてローカル環境で動かすこともできますが、今回は以下リンク先のネット上のサービスを使います。
Remix – Solidity IDE
https://remix.ethereum.org/
はじめに画面を開くとballot.solという名前のファイルが開いていますが、これは閉じても結構です。
画面左上の+ボタンをクリックしてファイルを新規作成します。名前は「HelloWorld」にしました。拡張子はsolです。
新規作成するとファイル名を入力するウィンドウが表示されます。
ファイルの新規作成が完了したら、下記のコードを画面中央のコード入力欄に記述して下さい。
1 2 3 4 5 6 7 |
pragma solidity ^0.4.11; contract HelloWorld { function say() constant returns (string) { return "Hello World"; } } |
1行目
Solidityのバージョンを宣言しています。この数値はコンパイラのバージョンと合わせる必要があります。画面右上の「Settings」を選択してドロップダウンメニューから「0.4.11+commit.68ef5810」を選択して下さい。
「Compile」を選択して、エラーが表示されずに以下の様な画面になっていることを確認します。
次に「Run」を表示させます。「Environment」の項目が「JavaScript VM」に設定されていることを確認します。JavaScript VMを利用すると、ブラウザー上でイーサリアムのノード無しに擬似的にコントラクトを実行することができます。ブロックチェーン上での実行時には「Web3 Provider」を選択します(本記事では説明しません)。
JavaScript VMが選択されていることを確認したら「Create」ボタンをクリックして下さい。すると下記のような項目が表示され、先ほど入力したコードの関数(say)を実行することができるボタンも表示されます。
「say」ボタンをクリックすると「Hello World」が表示されます。
画面中央のコード入力欄の下には、下記のようなコンソール画面が表示されます。「Details」ボタンをクリックすると、「Transaction cost」「Execution cos」などの内容を確認することができます。
参照ページ