ScalaとAkkaの両方を学ぶために、私は戦艦ゲームを書いています。私はまだ実際にコードを書き始めていません。ただ物事がどのように機能するかを考えているだけです。
船とプレイヤーの艦隊のエージェントがいて、「発砲」、「ヒット」、「ミス」、「すべての船が殺された」などのメッセージがあります。私の最初のつまずきは、プレーヤー1がシュートすると、イベントのバーストが発生し、プレーヤー2は、すべてが落ち着くまで待ってから自分のターンをプレイできるようにする必要があることです。どうすればそれを確認できますか?何があっても常に返信を送信し、送信者が送信されたメッセージとまったく同じ数の回答を受信することを数えるのではないかと思いました。たぶん戦艦はエージェントにとって最良の候補アプリケーションではありません。
これはまた、メッセージがまだ処理されていない、エージェントが何も応答しなかった、またはエージェントが死亡したために応答がないことを区別するという問題をもたらします。しかし、後で使用するためにそれを保存します。