ここで読むことができるパッシブビューを使用します。
- 各フォームをインターフェースの背後に配置します
- 各フォームは、1つ以上のUIオブジェクトに登録されます
- UIオブジェクトは、セットアップ、入力、表示などのように自然に編成する必要があります。ワードプロセッサは、ドキュメントごとに1つのUIオブジェクトしか持つことができません。マシンコントローラは、画面ごとに複数のオブジェクトを持っている場合があります。
- インターフェイスは、UIオブジェクトにイベントを渡し、プレゼンテーションコントロールを公開し、UIオブジェクトにサーフェスを描画するシンシェルとして実装されます。
- 次に、UIObjectは入力を受け取り、実行するコマンドオブジェクトを特定します
- コマンドオブジェクトはモデルを更新し、1つ以上のUIオブジェクトにビューを更新するように指示します。
- UIObjectsはビューを更新します。
ボタンやチェックボックスなどについては、UIインターフェイス以外には何も知らないことに注意してください。インターフェイスを使用して、実際の実装を抽象化します。
これにより、いくつかの利点が得られます。最初に、コードがUIとどのように相互作用するかを文書化し、自動テストに使用するモックオブジェクトを実装する場所を提供し、最後にUIを変更する際の自由度を大幅に高めます。
たとえば、コマンドボタンの代わりにクリック可能なパネルを使用します。フォームは、ボタンではなくパネルからクリックイベントの受け渡しを開始します。フォームは、各ウィジェットが実行することになっている実際のコマンドを認識しないままになる可能性があります。UIオブジェクトがそれを処理します。