Meteorを準備する
Meteorとは
まずは今回の開発にフレームワークとして利用するMeteorについて説明していきます。
MeteorはオープンソースのWebアプリケーション・フレームワークであり、2012年に最初のリリースが行われて以降、精力的に機能強化が行われています。現在ではWebブラウザ上での動作はもちろん、iOSアプリやAndoroidアプリとして動作するアプリケーション開発も可能になっています。アプリケーション開発における生産性を高める機能が数多く備わっており、リリース以来多くの注目を集めています。Meteorには大きく以下の3つの特徴があります。
UNIVERSAL JAVASCRIPT: Meteorではクライアント側とサーバ側のコードの両方をJavascript言語で記述することを可能にしています。またクライアント側もWebブラウザ/iOSアプリ/Androidアプリに関わらずJavascript言語でのアプリケーション動作の記述を可能にすることで、完全に統一されたコードの管理が可能になり、コードの共用など開発及び保守のコストが軽減されます。
Realtime & Reactive: Webアプリケーションの使用者の中の誰かがサーバ側のデータを更新すると、その変更がリアルタイムにアプリケーションを利用している全てのユーザーに伝搬し「再読み込み」のようなユーザーの操作もなく画面に自動的に反映される、といったリアルタイム、かつリアクティブなWebアプリケーションの開発を非常に容易にする仕組みが用意されています。
Develop to Deploy: Meteorは開発だけでなくアプリケーションの公開までも非常に容易にします。開発者が独自にサーバを用意しアプリケーションのデプロイと公開を行うこともできますが、MeteorはMeteorを使って開発したアプリケーションの公開用プラットフォームを用意しており、コマンド一つで自分のアプリケーションをWeb上に公開することが可能にしています。
Meteorのこのような特長に加え、既にEthereumのノードとAPI連携するためのライブラリ群(Meteorではパッケージと呼びます)が開発されており、これらを組み込むことでP2PのEthereumネットワーク上で動作するDappの開発が可能になります。実際にEthereumの公式walletであるMistもMeteorを利用して開発されています。
分散型アプリケーションの開発を進めていく準備として、先ずはMeteorインストールしてみましょう。以下特に言及しない場合はubuntu 14.04の環境を前提とします。他のOSの場合には適宜読み替えてください。(Linux OSやMac OSの場合はほぼ同じ操作で進められるでしょう。)
Meteor事始め
Meteorのインストール
Meteorのインストールは極めて簡単です。ターミナルを開き
の1行のコマンドを実行するのみです。実行の途中でsudoのパスワードを聞かれるので適宜入力してください。実行後
と入力してバージョン情報が表示されればインストールが出来ています。
最初のアプリケーションを作成する
Meteorのインストールしたので、実際にMeteorで簡単なアプリケーションを作ってみます。そのために、任意のディレクトリ上で
のコマンドを実行します。ここでmyfirstapp
は今回作るアプリケーション名です。このコマンドを実行すると、
の3つのファイルと.meteor
ディレクトリが含まれるmyfirstapp
のディレクトリが作成されます。これはmeteorが自動的に作成するアプリケーションのひな形(boilerplate)です。このディレクトリのファイルを編集したり、必要に応じて追加していくことでMeteorのWebアプリケーションの開発を進めていくことになります。この作成されたひな形は(至極単純なものですが)実際にWebアプリケーションとして動作するので、動かしてみましょう。
をmyfirstapp
ディレクトリに移動して
コマンドを実行します。実行するとしばらくしてコンソールに=> App running at: http://localhost:3000/
と表示されるのでWebブラウザでアドレスに「http://localhost:3000/ 」と入力しアクセスします。すると下図のような(単純な)Webアプリケーションが表示されます。
以上、Meteorのインストールからひな型の作成とその実行までを見てきました。次節以降でこのMeteorを用いたEthereumネットワーク上で動作する分散型アプリケーションの開発の方法をチュートリアル形式で見ていきます。
■TIPS
Meteorの特徴として、「Meteorで開発したWebアプリケーションをコマンド一つで世界に公開できる」というものがあります。公開は作成したアプリケーションのディレクトリで例えば
のコマンドを実行するだけです。開発したアプリケーションが自動で公開サーバにアップロード・デプロイされWeb上で公開されます。ここでhogehoge
の部分で公開する際のURLのサブドメインを指定しています。この場合URL「http://hogehoege.meteor.com 」で開発したアプリケーションにアクセスできるようになります。
Meteorをさらに知るために
次節以降で、Meteorを用いた「Ethereumネットワーク上で動作するDappの開発」に主眼を置いて解説していきます。そのためMeteor持つ強力な機能の全てを本書内で解説するこはできません。Meteor自体のより詳細で良質な解説を下記に挙げておきます。
Meteor公式チュートリアル: 簡単なTODO管理アプリケーションの開発をチュートリアル形式で解説しています。
Discover Meteor: リアルタイムのソーシャル・ニュース・アプリを題材にチュートリアル形式でMeteorとそれを用いた開発を解説した電子書籍です。上記の公式チュートリアルよりもより網羅的です。有料($29-)でGumroadにより販売されています。また有志による日本語翻訳版も公開されており、こちらは無料で閲覧が可能です。
Meteor Docs: 公式のAPIリファレンスです。
Last updated