初心者による初心者のためのInternet Computerチュートリアル備忘録その7「Use multiple actors」
プログラミング(C#)歴半年の私でりおてんちょーが、Internet Computerチュートリアルを進めていく上で
- 分かりづらかったところ
- めっちゃ調べたところ
などを、備忘録としてこちらにまとめていきます。
【目次】
Internet Computerチュートリアル備忘録その1「Explore the default project」
Internet Computerチュートリアル備忘録その2「Query using an actor」
Internet Computerチュートリアル備忘録その3「Pass text arguments」
Internet Computerチュートリアル備忘録その4「Increment a natural number」
Internet Computerチュートリアル備忘録その5「Use integers in calculator functions」
Internet Computerチュートリアル備忘録その6「Import library modules」
Internet Computerチュートリアル備忘録その7「Use multiple actors」
Internet Computerチュートリアル備忘録その8「Customize the front-end」
Internet Computerチュートリアル備忘録その9「Add a stylesheet」
Internet Computerチュートリアル備忘録その10「Make inter-canister calls」
Internet Computerチュートリアル備忘録その12「Add access control with identities」
Internet Computerチュートリアル備忘録その13「Accept cycles from a wallet」
Internet Computerチュートリアルが終わったらやること1「examplesを動かして遊ぶ」
今回は、7つ目のチュートリアル「Use multiple actors」についてです。
これからInternet Computerチュートリアルを始める方に、少しでも役立てていただけると幸いです。
また、この記事ではMacでの作業となりますこと、あらかじめご了承ください。
新しいプロジェクトを作成する
1. ターミナルシェルをまだ開いていない場合は、ローカルコンピューターで開きます。
まずはターミナルを開きます。
2. 別の作業フォルダーを使用している場合は、インターネットコンピュータープロジェクトに使用しているフォルダーに移動します。
クイックスタートで「ic-projects」というフォルダを作り、私はそこにまとめるようにしたので、『cd ic-projects』で移動します。
ちなみに『pwd』コマンドで、現在の場所が確認できますよ。(pwd:print working directoryの略)
3. 『dfx new multiple_actors』のコマンドを実行して、新しいプロジェクトを作成します。
この呪文で∞マークっぽいのが表示されれば、プロジェクトの作成成功です。
4. 『cd multiple_actors』のコマンドを実行して、プロジェクトディレクトリに移動しておきます。
デフォルト設定を変更する
1. テキストエディターでdfx.json構成ファイルを開き、デフォルトの「multiple_actors」キャニスター名とソースディレクトリを、「assistant」に変更します。
- Xcode
- Visual Studio (code)
- テキストエディット
のどれかで、multiple_actorsディレクトリ内の「dfx.json」を開きます。
1つ目の写真のピンク線部分を、2つ目の写真のように変更します。
2. ファイルからmultiple_actors_assetsセクションを削除します。
3. rock_paper_scissorsプログラムの新しいキャニスター名、ソースコードの場所、およびキャニスタータイプと、daemonプログラムファイルの新しいキャニスター名、ソースコードの場所、およびキャニスタータイプを、assistantキャニスター定義の下に追加します。
この選択部分を、2. で削除したスペースにコピペしてあげましょう。
もし分からなければ、取り急ぎ「dfx.json」内のコードを全削除して、全部コピペで貼り付けちゃいましょう。
4. 変更を保存し、dfx.jsonファイルを閉じて続行します。
「command + S」で保存して終了しましょう。
5. 『cp -r src/multiple_actors/ src/assistant/』のコマンドを実行して、デフォルトのソースファイルディレクトリの名前をdfx.json構成ファイルで指定された名前と一致するように変更します。
『cp −r A B』コマンドは、「Aというディレクトリとその中身を、絶対パスでBにそっくりコピーする」という意味を持ちます。
6. 『cp -r src/assistant/ src/rock_paper_scissors/』のコマンドを実行して、assistantソースファイルディレクトリをコピーし、rock_paper_scissorsアクターのメインプログラムファイルを作成します。
7. 『cp -r src/assistant/ src/daemon/』のコマンドを実行して、assistantソースファイルディレクトリをコピーし、daemonアクターのメインプログラムファイルを作成します。
これで
- assistant
- rock_paper_scissors
- daemon
全てのアクターのメインプログラムファイルが、コピペ作成できました。
デフォルトのプログラムを変更する
1. 「src / assistant / main.mo」ファイルをテキストエディタで開き、既存のコンテンツを削除します。
これを全部削除します。
2. 次のサンプルコードをコピーしてmain.moファイルに貼り付けます。
チュートリアルのコードをコピペします。
3. 変更を保存し、main.moファイルを閉じて続行します。
「command + S」で保存して終了しましょう。
4. 「src/rock_paper_scissors/main.mo」ファイルをテキストエディタで開き、既存のコンテンツを削除します。
これを全部削除します。
5. 次のサンプルコードをコピーしてmain.moファイルに貼り付けます。
チュートリアルのコードをコピペします。
6. 変更を保存し、main.moファイルを閉じて続行します。
「command + S」で保存して終了しましょう。
7. 「src/daemon/main.mo」ファイルをテキストエディタで開き、既存のコンテンツを削除します。
これを全部削除します。
8. 次のサンプルコードをコピーしてmain.moファイルに貼り付けます。
チュートリアルのコードをコピペします。
9. 変更を保存し、main.moファイルを閉じて続行します。
「command + S」で保存して終了しましょう。
ローカルネットワークを開始します
『dfx start --background』のコマンドを実行して、ローカルコンピューターでインターネットコンピューターネットワークを起動しましょう。
--backgroundオプションを使うことで、ローカルコンピューターで別のターミナルシェルを開かずに済みますよ。
アプリケーションを登録、ビルド、およびデプロイする
1. 必要に応じて、プロジェクトのルートディレクトリにいることを確認してください。
「multiple_actors」にいることを確認しましょう。
2. 『dfx deploy』のコマンドを実行して、アプリケーションを登録、ビルド、およびデプロイします。
チュートリアルでは『dfx deploy --network ic』を使っていますが、興味のある方は一読しておきましょう。
関数を呼び出してデプロイメントを確認
あとはチュートリアル通りに、コマンドラインでコマンドを実行して確認しましょう。
今回はブラウザでのテストはありませんでしたので、ここまでで終了です。
ローカルネットワークを停止します
テストができたら、最後にローカルネットワークを止めておきましょう。
ターミナルが現在稼働中であれば「Control-C」を押して、「%」が表示される状態にします。
最後に『dfx stop』コマンドを入力すれば、7つ目のチュートリアルは終了です。お疲れ様でした。
思っていた以上に多くの反響をいただき、大変ありがたい次第です。よければHiÐΞやTwitterのフォローお願い致します!
需要がありそうであれば、他のチュートリアルも備忘録を残していきますので、何かしらアクションいただけると大変励みになりますし嬉しいです!
次はこちら(↓)をどうぞ
初心者による初心者のためのInternet Computerチュートリアル備忘録その8「Customize the front-end」