Показать сообщение отдельно
Старый 02.06.2014, 15:01
Wolsh вне форума Посмотреть профиль Отправить личное сообщение для Wolsh Найти все сообщения от Wolsh
  № 1  
Ответить с цитированием
Wolsh
Нуб нубам
 
Аватар для Wolsh

модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
Цитата:
А я вижу. При такой схеме получается...
А при твоей в эту схему добавляется ЕЩЕ ОДНО звено — еще и обратный контроллер. Такое бывает удобно в ОЧЕНЬ сложных крутых проектах, в которых Вью и Модель изначально разрабатывались совершенно независимо и "не ради одной цели" — тогда жизненно необходим "переводчик" между ними. Фишка, правда, в том, что нет особой разницы в трудозатратах — переписать что-то во Вью, чтобы она стала понимать "чужую" Модель, или написать контроллер. Ну, может чуть удобней тестить и настраивать.
Цитата:
1) Нафига тут тогда вообще котроллер?
Потому что Вью не имеет права приказывать Модели. С помощью контроллера Вы регулируете ее права и определяете качество реакции Модели, отсеивая "мусор", распределяя события и данные от Вью по разным ответственным блокам Модели — переводите с языка событий вьюхи на язык операций с данными Модели. Вьюха не имеет доступа к операциям, логике. Она может получать данные, хоть по "вашей", хоть по классической схеме.
Цитата:
А наиболее чистая схема - это когда вьюшка не подписывается ни на какие события модели
Вы не правы. Возможно, Вы просто привыкли к какому-то фреймворку, использующему такую схему. Это грязный фреймворк))) Возможно, в него ввели обратный контроллер ради тех случаев "крутизны", ведь фреймворк должен быть крутым и давать Вам все ВОЗМОЖНОСТИ. Но возможности — вовсе не обязательности. И не надо запутывать новичков. Если такой контроллер понадобится — они придумают как его включить в схему.
__________________
Reality.getBounds(this);


Последний раз редактировалось Wolsh; 02.06.2014 в 15:16.