チュートリアルの進め方
このチュートリアルでは、引数に 1 を足すだけの小さな Process から始めて、少しずつ題材を育てながら juiz の考え方を学びます。 各章は「動かしてみる」ことを中心にしていて、手を動かしながら読み進められるようにしてあります。
-
引数に 1 を足す Process を動かし、外から呼び出して結果を受け取ります。Process が冪等な関数であることと、call という使い方を学びます。
-
状態を持つ: Container と ContainerProcess
カウンタを題材に、状態を Container に置き、ContainerProcess だけがそれに触れる設計を学びます。
-
これまでの Process と Container を 1 つの設定ファイルで起動します。読み込み(plugins)と実体化(processes / containers)の違いを学びます。
-
Process をつなぐ: connect と Execution Context
talker と listener をつなぎ、Execution Context で周期的に動かします。connect というもう一つの使い方を学びます。
-
複数の機能要素を 1 つのプロジェクトにまとめます。Component が配布の単位であることを学びます。
-
別々に起動した juiz どうしを、設定ファイルなしでコマンドからつなぎます。Process が場所を問わず ID(URL)でつながることを学びます。
-
第 6 章の接続を、HTTP の代わりに QUIC ブローカーで行います。通信方式はブローカーとして差し替えられ、ID の先頭がそれを表すことを学びます。
各章の読み方
Section titled “各章の読み方”- 章の最初に「この章で学ぶこと」、最後に「まとめ」があります。
- コード例は Rust・Python・C++ のタブで切り替えられます。一度選んだ言語は、ほかのページでもそのまま保たれます。
- コードはサンプル集(Rust・Python・C++)のファイルと同じものです。各章に対応するファイルへのリンクを置いています。
- やりたいことが決まっているときは、ガイド から逆引きで探すこともできます。
インストール の手順で、juiz コマンドと、使う言語のパッケージを入れておいてください。
Python だけで進める場合は pip install juiz-cli で juiz コマンドと pyjuiz がそろい、Rust のツールチェーンは要りません(第 1 章でサンプル集の requirements.txt から入れます)。
Rust・C++ で進める場合は cargo install juiz_app で juiz コマンドを入れます。C++ ではさらに CMake と C++17 対応のコンパイラが必要です。
準備ができたら、はじめての Process に進みましょう。