開発ツールのインストール!
動作環境
ハードウェア
- 16GB+ RAM (swapメモリ込み)
- 4+ CPU (6+ CPU推奨)
- 30GB+ 空きスペース
- インターネット接続
事前インストール必要なソフトウェア
- Xcode developer tools (macのみ)
Mac / Linux環境設定
HolochainではNixツールキットを使用して、開発ツールのインストールを管理しています。まずは、次のコマンドでNixパッケージマネージャーをインストールしてください。
curl https://nixos.org/nix/install
インストール後に、正しくインストールされたことを確認します。
nix-env --versioncopy
次のように表示されれば正常にインストールされています。
nix-env (Nix) 2.2.2
NixOS及びHolochainがNixOSを使用している理由について詳しく知りたい場合は、こちらでNixに関する情報をご覧ください。
ホロチェーンツールのインストール
Nixをインストールしたら、正しいRustバージョンとHolochainツールを含むすべての必要なツールを含んだ開発シェルを実行できます。このシェルは、現在の読者のRustインストールには干渉しないので安心してください。以下のコマンドを実行してみてください。
nix-shell https://holochain.love
このコマンドを初めて実行すると、ダウンロードとビルドに時間がかかりますが、次回に実行からはより早くなります。このコマンドが完了すると、以下の文字列で始まる新しいプロンプトが表示されるはずです。
[nix-shell:
以下の2つのコマンドを実行して、Holochainが正常に機能していることをテストしましょう。
[nix-shell:hc –version
[nix-shell:holochain –version
次のように表示されるはずです。
[nix-shell: hc 0.0.29-alpha2
[nix-shell: holochain 0.0.29-alpha2
更新/アンインストール
nix-shellを使用ているので、更新やアンインストールについて心配する必要はありません。nix-shellに入ると、すべてが最新リリースのツールに自動的にになり、シェルを終了すると使っていたツールがクリーンアップされます。
エディター
ほとんどの場合、通常どおり読者が使用しているエディターを使用できます。ただし、Holochainの依存関係(dependencies)と通信する必要がある統合開発環境(IDE)を使用している場合は、nix-shell内からそのIDEを起動する必要があります。
これを行うには、nix-shellで次のようにエディターを開きます。
[nix-shell:vim my_file.rs
最初のホロチェーンアプリ
hcツールを使用すれば、基本的なホロチェーンアプリの骨格が生成できるようになります。
hcはnix-shell及びnix-envでインストールできます。
新たなホロチェーンアプリを生成するコマンドは”hc init “です。
“my_first_app”の名前で新しいアプリを作りましょう。
以下のコマンドを実行してください。
hc init my_first_app
注: 次のエラーが出た場合Error: directory is not empty、my_first_appディレクトリが既に存在しているということなので、rm -fr my_first_appコマンドを実行して削除しましょう。
ホロチェーンアプリの基本的な骨格が”my_first_app”の中に格納されるはずです。
ファイルブラウザか好みのテキストエディタで内容を確認しましょう。
尚、内容が確認出来たら、ホロチェーンアプリの味噌である”zome”を生成してみましょう。
“zome”とは、俗に言うソースであり、読者が開発するホロチェーンアプリのソースコードに当たります。
まずは、読者のターミナルを”my_first_app”フォルダに移しましょう。
このために、以下のコマンドを実行してください。
cd my_first_app
次にZomeを生成するために以下のコマンドを実行してください。
hc generate zomes/my_zome
プロジェクトフォルダの中で、nix-shellに入っていることが確認できるはずです。
以下のようにターミナルのプロンプトが表示されるはずです。
このコマンドにより、”zomes/my_zome”に”zome”を開発するにあたっての実際のRustコードが生成されます。
これで好みのテキストエディタを使ってホロチェーンアプリの開発が可能になります。
生成された”zome”らには、シンプルな自動テストスイートが含まれています。
こちらは、”my_first_app/test/index.js”の中に格納されています。
これらのテストスイートは以下のコマンドで実行できます。
hc test
hcツールについてもっと学びたい場合は、以下のコマンドを実行してください。
hc help
Rustで開発するにあたって:
ホロチェーンアプリを開発するにあたって読者がrust言語のエキスパートになる必要は全くありません。
Rust言語の基本的な概念が理解できていれば、ホロチェーンアプリの開発には十分でしょう。
例えば、並行性やメモリ管理などの概念はほとんど理解できていなくても大丈夫です。
こちらのRust book (日本語版)は原本の翻訳版で初心者にも分かりやすく理解できるように書かれています。
しかし、そうは言ってもRustは低水準言語ですので、JavaScriptのようなスクリプ言語よりも冗長であることには変わりません。
次のステップ
さあ、どんどんP2Pアプリをホロチェーンで作っていきましょう!
ここから先は、弊社ウェブページのガイドブックやこちらのホロチェーン開発キットAPIリファレンス(ただ今翻訳中!)を参照にしてください。