2

開発用に MVP (パッシブ ビュー) フレームワークを作成し、アプリケーション コントローラー パターンを使用してビュー間のナビゲーションを管理することにしました。これは、WinForms、ASP.NET、および WPF インターフェイスを対象としています。

これらのビュー テクノロジが実際にスワップ可能であると 100% 確信しているわけではありませんが、それが現時点での私の目標であるため、私の MVP フレームワークは非常に軽量です。

私が適合するのに苦労しているのは、状態情報を (a) ビューの存続期間中維持するか、(b) ビューの存続期間にわたって複数のビューにわたって維持する必要がある「ビジネス会話」の概念です。ユースケース (ビジネス会話)。開発者に心配させたくないので、状態管理をフレームワークの一部にしたいと考えています。彼らがする必要があるのは、会話を「開始」し、オブジェクトを「登録」することだけであり、フレームワークは会話を「終了」するまで残りを行います。

これを MVP に適合させる方法について何か考え (パターン) を持っている人はいますか? ユーザーを次のビューに送るために現在の状態を知っているので、アプリケーションコントローラーの責任(会話マネージャーオブジェクトへの委任)の一部である可能性があると考えていました....しかし、それはプレゼンターは会話を開始および終了するため、プレゼンターは会話とその会話に登録されたオブジェクトを管理します。残念ながら、プレゼンターを別の会話で使用することはできません... したがって、その考えは正しくないようです。

ご覧のとおり、簡単な答えはないと思います (しばらく探しました)。それで、他の誰かが何か考えましたか?

4

1 に答える 1

1

ビジネス会話をサポートするために必要なクラスは、ユーザー インターフェイスのみが含まれる場合、プレゼンターに常駐する必要があります。それ以外の場合は、ビューからプレゼンター、モデルへのモデルとコントローラーにある必要があります。ビジネス会話に関する情報が逆に流れます。プレゼンターだけに常駐できるものだと思います。

すべてのビューがプレゼンターにアクセスできるため、会話をサポートするオブジェクトを構造化して、複数のビューで維持できるようにすることができます。

ビューは、ソフトウェアに存在するデータへのウィンドウであることを忘れないでください。他の表示データはほとんど処理せず、ロジックを実行するプレゼンターにユーザー インタラクションを渡します。

于 2009-11-30T13:09:06.193 に答える