A.2
MVP
327
A.2.1
モデル、ビュー、プレゼンター
MVP
の
P
は
Presenter
(プレゼンター)を表します。このコンポーネントには、ビューのユー
ザーインタフェースにかかわるビジネスロジックが記述されます。
MVC
とは異なり、ビューから
の呼び出しはプレゼンターに委譲されます。ビューとプレゼンターとの間は疎結合であり、イン
タフェースを通じてコミュニケーションが行われます。これによって、ユニットテスト用に仮の
ビューを用意できるなどのさまざまなメリットを得られます。
MVP
の実装形態の中で最も多く見られるのは、ロジックをほとんど持たないパッシブ(受動的)
ビューと呼ばれるビューを利用するというものです。パッシブビューは無知です。モデルの役割は
MVC
と
MVP
でほぼ共通であり、いずれもアプリケーションのデータを扱います。プレゼンター
はビューとモデルの仲介者として、互いに隔離されている両者を協調させる役割を持ちます。これ
は実質的に、モデルからビューへの関連付けを意味します。
MVC
ではコントローラがこの役割を
受け持っています。プレゼンターは
MVP
パターンの中で中心的な役割を担っており、ビューの背
後にあるプレゼンテーションロジックも(名前のとおり)プレゼンターが保持しています。
ビューからの要求に応じ、プレゼンターはユーザーの操作を扱う処理をすべて受け持ち、処理
結果としてデータを返します。この意味では、プレゼンターはデータを取得して処理し、ビュー上
でのデータの表示方法を決定していると言えます。実装に ...