Минусы: вид зависит от данных
типы, поэтому добавляет сцепление
Как правило, компонент представления не имеет никакой другой цели, кроме отображения данных домена и, возможно, разрешения пользователю взаимодействовать с ним. Считается, что компонент представления должен иметь некоторое представление о данных домена.
Таким образом, подача коллекции VO в ваш компонент представления не добавляет «плохую» связь «Плохая» связь - это когда компонент представления знает о том, как добраться до уровня Модели и манипулировать Прокси, который содержит данные. Или когда Прокси на уровне модели знают, как получить в свои руки компоненты представления или их посредников, чтобы вставлять в них данные.
Посредник добавляет вещи в представление,
который побеждает точку
разделение Посредника и Видения.
Как указал Кодированный сигнал, мы не пытаемся отделить посредник от компонента просмотра. Посредник является единственным действующим лицом в системе PureMVC, который должен знать компонент представления и обеспечивать связь между ним и остальной частью системы. Посредник является наиболее важным участником системы в отношении ослабления связи между уровнем просмотра и уровнем модели.
Для связи с компонентом представления другие субъекты отправляют уведомления, на которые Посредник слышит и реагирует на них, манипулируя открытым интерфейсом API компонента представления; накормить данные или вызвать методы. Это эффективно удерживает остальную часть приложения от необходимости знать что-либо о компоненте.
Посредник также прослушивает компонент для событий и действует от его имени, извлекая данные из уровня модели или отправляя заметки другим посредникам или инициируя команды на уровне контроллера. Это удерживает компонент от необходимости знать что-либо о системе, к которой он подключен. Он просто предоставляет API свойств и методов, инкапсулирует свое собственное поведение и отправляет события, когда происходит то, о чем должна знать система.
Таким образом, компоненты Mediators и View вместе образуют уровень просмотра приложения.
- = Cliff>