Механизм шаблона MVP

Цитата из википедии:

View определяется как интерфейс, который Presenter будет использовать для получения и установки данных модели. Реализация View будет содержать ссылку на класс Presenter’a и предоставлять Presenter’у ссылку на себя (Формально параметром конструктора Presenter’a является интерфейс View, в то время, как в конструктор передается конкретная реализация View). Когда вызывается событие View, оно вызывает конкретный метод Presenter’а который не имеет параметров и не имеет возвращаемого значения. Затем Presenter получает данные из View, через интерфейс. Затем Presenter вызывает методы модели, и устанавливает данные из модели во View через интерфейс.

Кто знает, правильно ли, что реализация View должно знать о презентере  согласно шаблону (1 на рисунке)?  или презентер, как говорит другой программист, должен знать о реализации View (2 на рисунке)

Безымянный.JPG

"тот кто видит --> тот, кто используется"

третий вариант (когда реализация вьюв знает о презентере и наоборот) в программе не получается. они разделены в разные проекты Views,ViewsImpl,Presenters, PresentersImpl и при попытке ссылки двух проектов на друг друга возникает ошибка-циклическая ссылка в Visual Studio


LordLeo
2010-12-30 23:53:32
Поделиться
+1
Atermitter

Amter31 декабря 2010 0:20

Прозвучало как абра кадабра...
Shocked

JStingo

JStingo31 декабря 2010 10:04

В описании же русским языком написано. Только конкретный класс View знает о реализации Presenter. Preseneter же работает с интерфейсом View, т.к. в конструктор ему передают не конкретную реализацию View а интерфейс.

Я вот одного понять не могу, почему ты решил использовать MVP? С потолка? Решать использовать какие либо шаблоны проектирования без качественного описания и разъяснения их принципов и задач — очень странно.

JStingo
2010-12-31 10:47:16
LordLeo

LordLeo31 декабря 2010 10:21

Инициатором использования шаблонов был не я. А другой программист, который использовал шаблоны также на другой программе.

Этот шаблон я более менее понял. разные мнения выходят по поводу того момента который я спросил.

Значит цитата из википедия полностью верная выходит. Ясно.

LordLeo

LordLeo31 декабря 2010 10:52

еще вопрос:

- При использовании презентера для определенной формы X: если форма X помещается на другую Y. Обращение родительской формы Y к форме X будет происходить напрямую или через презентер формы X?

Из " Реализация View будет содержать ссылку на класс Presenter’a и предоставлять Presenter’у ссылку на себя (Формально параметром конструктора Presenter’a является интерфейс View, в то время, как в конструктор передается конкретная реализация View). "  выходит, что презентер каждой формы будет скрыт внутри нее и не используется снаружи, а использование формы происходит напрямую. Это так?


LordLeo
2010-12-31 10:58:08
Прямой эфир
Наблюдение за птицами организуют для жителей Павлодара в эти выходные
Инициатива замечательная. Не успеваю везде
#Somik1 день назад
Пятеро погибли, спасая 17-летнего парня: в Минтруда назвали виновного в трагедии на Aqtogai Milk
Напомнило: Сидят трое пьяниц, выпивают. Первый наливает из бутылки, выпивает, падает замертво.Второй смотрит на…
#wlad1 день назад
Какие товары производят в Павлодарской области (фото)
Сыр павлодарский беру периодически. Производится в Иртышске вроде как
#Somik2 дня назад
Выплаты бойцам в "Жасыл ел" выросли на ноль тенге за последние 5 лет в Павлодарской области
ну собственно им платят в соответствии с работой . там где обычному работнику работы на полчаса, эти шляются  толпой …
#sergadm2 недели назад
В полиции подтвердили информацию о задержании павлодарского депутата и бизнесмена Александра Терентьева
Не раскрывается ... не разглашается. Да в интернете полно информации об этом, только Павон один изображает страуса.
#wlad3 недели назад
Кто из звезд казахстанской эстрады выступит в Кенжеколе 9 августа
Цыпа, передай этим парням, что обладательница официального мирового рекорда Книги рекордов Гиннесса среди ныне живущих…
#wlad3 недели назад
Из-за банки пива павлодарского предпринимателя оштрафовали на 120 тысяч тенге
не мешало бы , чтобы и покупатель нёс ответсвенность. А если не совоершеннолетний выпьет бутылку в зале и готов оплатить…
#sergadm2 месяца назад
Жителей Экибастуза напугали подземные толчки
1–3 балла: Очень слабые колебания. Люди их не ощущают (толчки фиксируют только приборы), либо замечают только те, кто…
#sergadm3 месяца назад
"Иртыш" решил судьбу главного тренера Альшевского
Алдияру Жапарханову, спасибо! Видим, что ситуация меняется. Две ничьи 2:2 тому подтверждение. Я был на игре с Алтаем. На…
#Somik3 месяца назад
Девушка оставила заведенный внедорожник во дворе и чуть не лишилась его в Павлодаре
Оперативно, приятно, что за нами присматривают
#Somik3 месяца назад
Школьникам из села Жетекши подарили новый автобус
Симпатичный яркий автобус. Я бы его со всех сторон изучил. Необычный транспорт
#Somik4 месяца назад
Более 15 миллиардов тенге потратят на ремонт и модернизацию павлодарской ТЭЦ-2 в 2026 году
За системный подход к ремонту спасибо. За улучшение бытовых условий для сотрудников отдельное спасибо
#Somik4 месяца назад
"Марш парков" пройдет на павлодарской набережной 3 апреля
Natalypvl, спасибо, что написали. Я узнал об этом уже на месте, увидел там только несколько сот скворечников, пазик и…
#Somik4 месяца назад
В травмпункте Экибастуза пьяная компания напала на врача
Отказываясь выйти из помещения, компания молодых людей стала наносить удары врачу. Судя по скриншоту у врача ну…
#wlad4 месяца назад
Павлодарец уехал на рыбалку, а домой вернулся без машины
- При осмотре багажника стражи порядка обнаружили несколько мешков с лещом общим весом 15 килограммов. 15 мешков и в…
#wlad4 месяца назад
Павлодарская школьница выучила 9 языков и купила квартиру
Кто хочет, тот и добивается. Молодец!
#Somik5 месяцев назад
Павлодарские студенты-программисты проходят стажировку в Южной Корее
Возможностей пруд пруди. Новости некогда читать. Надо реализовывать возможности
#Somik5 месяцев назад