私のアプリケーションの起動プロセスでは、アプリケーションが完全に実行できるようになるまで、いくつかのタスクを実行する必要があります。
最初にいくつかの config-XML のロードを開始し、いくつかの Web サービス呼び出しを行い、いくつかのライブラリをロードします。これはすべて、時間を節約するために非同期で行われます。このタスクのいくつかが終了したら、さらにいくつかの作業を行う必要があります。そのため、起動が完了するまでは非常に複雑なフローチャートになります。
私はすでにこのグラフを紙にスケッチして、何が起こっているのかを明確に概観しています.
現在、これは多くのブール変数と多くの if ステートメントで実装されています。これは明らかに最善の方法ではないと思うので、私の質問は次のとおりです。
この種のタスクには通常、どのようなデザイン パターンが使用されますか? 私はステート マシンを考えましたが、どのタスクが最初に終了するかに応じて非常に多くの状態が考えられるため、ステート マシンには多すぎる状態になってしまいます。