Re[10]: Model-View-Controller в .Net
От: IB Австрия http://rsdn.ru
Дата: 07.11.06 13:18
Оценка:
Здравствуйте, adontz, Вы писали:

A>В MVP сложнее, оповещений нет. Но и сказать виду SetX(5); SetY(6) нельзя, потому что между этми вызовами вид отрисует точку по координатам (5;7). Надо делать BeginUpdate, SetX, SetY, EndUpdate. Кроме того виду может понадобится только X-координата. В MVC только она видом и считывается, в MVP информация о том что именно надо виду теряется и приходится перегонять туда обе координаты, даже если в этом нет необходимости.

Кто сказал? Опять все претензии из-за того, что невнимательно прочитал?
1. От того, что нет оповещений ничуть сложнее не стало — изменения в модель попадают через презентер, значит он знает, что изменения были внесены и совершенно спокойно может обновить представление, я писал об этом уже несколько раз.
2. Опять-таки я несколько раз упоминал о том, что Представление не бязательно должно работать с примитивными типами, если очень нужно то в интерфейсе вполне может быть описан метод SetPoint(Point p), хотя это и усложнит view.
3. В MVP вполне могут быть оповещения представлений моделью, о чем опять-же сказано в статье, но в подавляющем большинстве случаев это приведет лишь к неоправданному навешиванию на представление лишней логики.
4. При изменении модели у медиатора в классическом MVP ровно столько же информации сколько и у презентера, следовательно он так же в состоянии обновить только ту часть представления, которая необходима. Это я писал уже непосредственно тебе.

A>Понятно, что объект Point слишком мал и пример выглядит странно, но представьте себе что у нас более сложные композитные данные.

Болеее сложные композитные данные работают с более сложными композитными триадами, все эти случаи я уже описывал.
... << RSDN@Home 1.2.0 alpha rev. 0>>
Мы уже победили, просто это еще не так заметно...
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.