2

イベント ドリブンの有限状態マシン用の単純な .NET コード ジェネレーターはありますか?

ユーザー インターフェイス オブジェクトに対して手動でこれを行うのにうんざりしています。enum 定義、switch ステートメント、および各関数呼び出しだけが必要です。「ライブラリ」は必要ありません。

http://en.wikipedia.org/wiki/Event_driven_finite_state_machineのイベント駆動型有限状態マシンを参照してください。

http://aabs.wordpress.com/2008/06/26/state-machines-in-c-30-using-t4-templates/のT4 テンプレートを使用した C# 3.0 のステート マシンは、私が望むもののように思えますが、サンプルコードへのリンクが壊れています。

4

2 に答える 2

0

私があなたの立場にある場合は、EnterpriseArchitectの試用版をダウンロードします。

http://www.sparxsystems.com.au/products/ea/index.html

次に、シナリオをモデル化してから、コードジェネレーターを使用します。生成する必要のある数に応じて、リストに基づいて複数の時間変化するパラメーターを生成できるスクリプトなど、製品のより高度なオプションのいくつかを調べたい場合があります。

PS私はSparxシステムでは動作しません:-)、私は彼らのツールが大好きです。

于 2010-09-14T11:15:43.843 に答える
-1

あなたが言ったように、あなたはただ必要です:

その変数を保持する列挙型定義、メソッド名に対応する列挙型状態を含む命名規則、リフレクションを使用した呼び出し、および列挙型を保持する変数の更新

上記は生成されたコードではありませんが、使用しない理由がわかりません。1枚でも早く焼けるはずです。リフレクションを使用する代わりに、 Func<> が呼び出される各状態のリストを保持し、T4 テンプレートで簡単に生成できるようにすることもできます。


ps。私の方がはるかに役立つ傾向がありますが、質問の言い回しはそれを懇願しました ^-^。とは言っても、私は上記のことを真剣に考えています。上記のいずれかを実行するのにそれほど時間はかかりません(特に、OPが知らない可能性のある部分でstackoverflowのヘルプを使用すると)/そしてOPは、彼がそれらを行ったように書いています何回も手にします。

于 2010-09-13T20:33:38.987 に答える