2012-04-27 2 views
2

私は開発したソフトウェアを高水準の構造にする方法を探しています(Androidの場合、これは重要ではありません)。私のソフトウェアは、センサ、ユーザインタラクション、リモートメッセージ、およびタイマーイベントからのイベントによって駆動されます。私は、入力のどの組み合わせが問題を引き起こすかを監督することができない混乱になるのではないかと恐れています。複数の入力ソフトウェアを設計する

状態マシンはいいですが、状態が多すぎるようです。初心者として、私はここにデザインパターンを実装しています。しかし、私は全体のデザインについては迷っています。アプリケーションにストリーミングし続けるすべての「イベント」に構造を与えるにはどうすればよいですか?

答えて

1

ロボットソフトウェアがこれをどのように処理するかを調べることができます。ロボットも同様の問題に直面している。

2

「あまりにも多くの州」のコメントは、あなた自身の観察結果を反映したものに過ぎない。

良い設計では、複数の独立した有限状態マシンでシステムを分解します。 20ステートのシステムは、4ステートと5ステートのシステムでよりよく表現できます。

たとえば、すべての入力を1つの入力キューにリファクタリングすることができます。このキューは、それ以降の処理とは独立した独自の状態(空、部分的に完全、完全)を持ちます。

関連する問題