手軽に“Solidity”言語でスマートコントラクト開発、開発環境「Remix」ってどう使う?:Ethereumではじめる“スマートコントラクト開発”(2)(1/3 ページ)
Ethereumでスマートコントラクトを開発する場合、何を準備して開発すればいいのだろうか。本稿では、コンパイラ兼統合開発環境である「Remix」をサンプルコードと一緒に紹介する。
超入門スマートコントラクト
「スマートコントラクト」は、ブロックチェーン技術を活用したアプリケーションプラットフォームの中で、契約の条件確認や履行などを自動で行うことから、研究開発が進み、注目されている技術です。
本連載では、スマートコントラクトの概念や仕組みを整理しつつ、DApps(Decentralized Applications:分散ノード上で実行されるアプリケーション)でのスマートコントラクトのコーディング方法、企業向けアプリケーション開発の実践方法について解説していきます。今回はEthereumをベースに、スマートコントラクトコードのコーディングについて説明します。
「Remix」の画面構成の説明
Ethereumのスマートコントラクトコードを初めて書くのであれば、コーディングとコンパイル、デプロイを手軽に始められる「Remix」を使うことをお薦めします。Remixは「Browser Solidity」という名称でも知られています。
Remixは、Solidity(Ethereumのスマートコントラクト開発言語)のコンパイラ兼統合開発環境です。オープンソースとして開発されており、ソースコードはGitHubで取得できます。また、最新版を公式サイト上で利用することもできます。今回は、お手軽にスマートコントラクトの開発を体感できる、公式サイト上のRemixを使ったオンライン開発について解説します。
Remixの画面構成は3つの領域に分かれています(画面1)。左から、ファイル操作、コーディング、コンパイル/デプロイ/テストです。メインの作業となるコーディングは、中央の広いスペースで実施しますが、その前後の作業は左右の領域で作業することになります。それでは、作業の流れを順に説明します。
コーディング前の準備
新ファイルの作成
「+」ボタンを押下すると、新しいファイルを作成できます(画面2)。
Solidityファイルの名称変更
ファイル名をクリックすると、任意のファイル名に変更できます(画面3)。Solidityでは、ファイルの拡張子を「.sol」にします。
コーディング
コーディングは中央の領域(下図の緑枠内)で行います(画面4)。
それでは、実際にコーディングしてみましょう。下記の足し算のサンプルコードを中央の領域に貼り付けてください。なおサンプルコードの解説は、コメント形式でコード内に記載しています。
pragma solidity ^0.4.9; //Solidityコンパイラのバージョンを指定しています contract Verysimple { //コントラクト名は「ベリーシンプル」 uint intNumber ; //整数型の変数「intNumber」を宣言しています //各コントラクトにはファンクションを実装します。 //このファンクションでは引数として与えられた数値を変数「intNumber」に加算し、その結果を返します function just_plus(uint _number)returns(uint _intNumber) { intNumber += _number; return intNumber; } }
Copyright © ITmedia, Inc. All Rights Reserved.
関連記事
- スマートコントラクトって何? 「競合との協業」という新たなビジネスの地平を開ける仕組みである理由とは
本連載では、「Ethereum」を使った契約の条件確認や履行などを自動で行う「スマートコントラクト」の開発方法を紹介していきます。第1回目は、スマートコントラクトとは、どのような仕組みで、どのような場面で使えるのかを紹介します。 - ブロックチェーンは「取引コストゼロ」の世界を実現しようとしている
本特集では金融業界がFinTechでビジネスを拡大するために必要な技術要件を浮き彫りにし、一つ一つ解説していく。今回は、FinTechの潮流の中で、特に注目を浴びているキーワード「ブロックチェーン」についてのセミナーの模様を紹介する。その応用分野は狭義の「金融」にとどまらない。流通やヘルスケア、音楽、ゲーム、さらには「契約」全般など、幅広い可能性を秘めたブロックチェーンの可能性を探る。 - ブロックチェーン技術「Ethereum」とは何か、アプリのアーキテクチャはどう変わるのか
リクルートテクノロジーズの社内ラボで行っている、主に非金融領域に対するブロックチェーンの活用に向けたR&Dを紹介する連載。今回は、スクリプティング機能をより広汎に使える形にしたブロックチェーンの構築を目指したオープンソースソフトウェア「Ethereum」を利用し、「履歴書データベース」として実装した課程と、その結果を紹介。