Flexアプリケーションの初期化コードでは、ユーザーの資格情報の確認、外部データのロード、JMSトピックへの接続など、一連の非同期呼び出しが行われています。これらの呼び出しのうちのいくつかは、実行されないか、または異なるパラメータで実行されます。非同期制御構造の扱い(Fluent Interface?)
これらの呼び出しはすべて非同期で発生するため、それらを制御するコードは読み込み、理解、保守、テストするのが難しいです。呼び出しごとに、次に実行する呼び出しを決定するコールバックメカニズムが必要です。
実行可能なユニットでこれらの呼び出しをラップし、それらを接続して制御するFluent Interface(FI)を持つ人がいるかどうかは不思議でした。 FIでビルド(と私たちはもちろんFIせずに、1つを構築することができ)、AsyncChainは実行ツリーになり
var asyncChain:AsyncChain = execute(LoadSystemSettings)
.execute(LoadAppContext)
.if(IsAutologin)
.execute(AutoLogin)
.else()
.execute(ShowLoginScreen)
.etc;
asyncChain.execute();
:私の頭の上から
、コードは次のようになります。
私は物事を試すために、コードに飛び込む前に、これは...?
Flash Playerが、シルバー、JavaFXのようなシングルスレッドモデルで実行環境のための面白いアイデアかもしれないが、私は期待していましたいくつかのフィードバックを得る。
更新19/03/2010:私たちは、非同期プロセスを制御します春のActionScriptプロジェクトで実験的なタスクのAPIを作成しました。フィードバックをいただければ幸いです。 http://www.springactionscript.org/docs/reference/html/the_operation_api.html#tasks