Akka.NET Bootcampへようこそ。 これは、 Petabridgeのスタッフが準備する無料の自習コースです 。
トレーニングコースは3つのパートに分かれており、その間に、Akka.NETアクターとAkka.NETフレームワークの他の多くのパートを使用して、完全に機能する実際のプログラムを作成する方法を学習します。
いくつかの重要なアクターから始め、徐々に大きく複雑な例に取りかかります。
このコースは自習用です-任意のペースで自由に行うことができます。 こちらで購読できます。毎日、英語の Akka.NETレッスン(英語-翻訳から)を受け取ります。
注:現在、コースはC#をプログラミング言語として使用するように設計されています。
将来的にF#のサポートを追加する予定です。
(F#プルリクエストも受け付けます)
何を学ぶ
Akka.NETトレーニングコースでは、Akka.NETアクターを使用してリアクティブな並列システムを作成する方法を学習します。 Akka.NETを学ぶ前に、不可能または非常に難しいと思われるアプリケーションの作成方法を学びます。 トレーニングコースの後、以前よりも複雑で大きな問題を解決することに自信を持つようになります。
パート1
最初のパートでは、アクターモデルとAkka.NETがどのように機能するかの基本を学びます。
* NIXシステムには、Windowsにはないファイルへの変更を監視する組み込みのtailユーティリティがあります。 Windowsのテールを再作成し、プロセスの基本的なことを学習します。
最初の部分では、次のことを学びます。
- 独自のActorSystemとアクターを作成する方法。
- アクターメッセージの送信方法と、さまざまな種類のメッセージの処理方法。
- 疎結合システムの構築でPropsとActorRefを使用する方法
- アクターのパス、アドレス、およびActorSelectionを使用してアクターにメッセージを送信する方法
- 子アクターとアクターの階層を作成する方法、およびSupervisionStrategyを使用して子を制御する方法
- アクターのライフサイクルを使用して、アクターの開始、シャットダウン、および再起動の動作を制御する方法
パート2
第2部では、第1部よりも複雑なアプリケーションを構築するためのAkka.NETの機能に近づきます。
第二部では次のことを学びます:
- HOCON設定を使用して、App.configおよびWeb.configを介してアクターを構成する方法
- コンテキストを切り替えることなく、アクターがUI要素で直接操作を実行できるように、アクターのディスパサーを UIスレッドで実行するように構成する方法
- パターンマッチングとReceiveActorを使用して、より複雑なメッセージタイプを処理する方法
- スケジューラを使用して繰り返しメッセージをアクターに送信する方法
- アクター間でパブリッシュ/サブスクライブ(pub-sub)パターンを使用する方法
- ランタイムでアクターの動作を切り替える方法と理由
- Stashを使用して後の処理のためにメッセージを保存する方法
パート3
3番目のパートでは、 OctokitとGithubのデータを使用して、アクターを使用して並列処理とスケーリングを行う方法を学習します。
3番目のパートでは、以下を学習します。
- PipeToを使用してアクター内で非同期に作業する方法
- アクター内でAskを使用してメッセージへの応答を待つ方法
- 他のアクターからの応答にReceiveTimeoutを使用する方法
- グループルーターを使用してアクター間で作業を共有する方法
- プールルーターを使用してアクターのプールを自動的に作成および管理する方法
- HOCONを使用してルーターを構成する方法
どこから始めるか
これがAkka.NET Bootcampの仕組みです。
Githubを使用して生活を楽にします。
このGithubリポジトリには、チュートリアルを完了するために必要なVisual Studioソリューションおよびその他の要素が含まれています。
したがって、トレーニングコースを継続する場合は、次のことをお勧めします。
- Githubにまだサインアップしていない場合はサインアップしてください。
- このリポジトリをフォークし、フォークをローカルマシンにクローンします。
- レッスンを行っている間、 Akka.NET Bootcamp ReadMesのWebブラウザータブを開いたままにして 、すべての指示を明確かつ簡単に読むことができます。
ブートキャンプの構造
Akka.NET Bootcampは3つのモジュールで構成されています。
- パート1-エントリレベルAkka.NET
- パート2-Akka.NET中級レベル
- パート3-Akka.NET上級レベル
各モジュールには、次の構造が含まれます(例としてパート1を使用:)
src\Unit1\README.MD - table of contents and instructions for the module src\Unit1\DoThis\ - contains the .SLN and project files that you will use through all lessons -- lesson 1 src\Unit1\Lesson1\README.MD - README explaining lesson1 src\Unit1\Lesson1\DoThis\ - C# classes, images, text files, and other junk you'll need to complete lesson1 src\Unit1\Lesson1\Completed\ - Got stuck on lesson1? This folder shows the "expected" output for the lesson -- repeat for all lessons
各パートの最初のレッスンから始めて、README (またはハブのここ:)-翻訳から)で説明されている指示に従ってください。
レッスン構成
各Akka.NET Bootcampチュートリアルには、以下を説明する説明が含まれています。
- レッスンで使用するAkka.NETの概念とツール、および関連するドキュメントまたは例へのリンク。
- 各レッスンの最後に予想される結果に応じて、 Unit- [Num] / DoThis /内で.NETプロジェクトを変更する方法に関する段階的な手順。
- 順を追って指示に従っていない場合は、各レッスンに、完成したソースコードがすべて表示されるフォルダ/ Completed /があります。 これと実装を比較して、変更する必要があるものを理解できます。
いつレッスンを完了しますか...
ステップバイステップの指示に従う際に留意すべきいくつかの事項:
- レッスンで示したコードを単にコピーしないでください。 独自のコードを印刷すると、Akka.NETのすべての組み込み関数を覚えて学習できます。 運動感覚 学習 FTW!
- Akka.NETには、 個々のレッスンを学習する際にいくつかのギャップを埋める必要がある場合があります。 -迷った場合は、このレッスンの/ Completedフォルダーの内容を常に確認してください。
- 質問することを恐れないでください。 GitterチャットでPetabridgeおよびAkka.NETチームに連絡できます
ドキュメント
各レッスンを通してすべての重要な概念を説明しますが、もちろんブックマークを付けてください(そして自由に使用してください!) Akka.NETドキュメントの使用
ツール/前提条件
このコースでは、次のことを期待しています。
- プログラミングの経験があり、C#に精通している
- GithubアカウントとGitの基本知識
- Visual Studioを使用しています( 現在は無料です! )
Petabridgeについて
Petabridgeは、.NET開発者が分散アプリケーションを簡単に構築できるように特別に作成された会社です。
Petabridgeは、Akka.NETのカウンセリングとトレーニングも提供しています 。