Тема: Хорошее MVC
Показать сообщение отдельно
Старый 17.01.2012, 02:31
HardCoder вне форума Посмотреть профиль Отправить личное сообщение для HardCoder Найти все сообщения от HardCoder
  № 7  
Ответить с цитированием
HardCoder
 
Аватар для HardCoder

блогер
Регистрация: Apr 2011
Сообщений: 583
Записей в блоге: 2
Цитата:
Сообщение от Zebestov Посмотреть сообщение
Ей даже не важно, кто и каким образом поменял эти значения (модель сама там что-то насчитала, контроллер что-то там вызвал, с сервера данные подоспели).
Это понятно. Я же не говорю что она должна знать кто что менял.
Цитата:
Сообщение от Zebestov Посмотреть сообщение
Не правильно. Вьюшка просто услышит про изменения и сама пойдет к модели выяснять, что там поменялось.
Жаль что не правильно. Яхотел просто вьюшку подписать на события модели и больше модель в ней вообще не трогать. Что-то типа этого:
Код AS3:
model.addEventListener(ModelEvent.UNIT_ACTIVATED, activateUnit);
private function activateUnit(e:ModelEvent):void {
      trace(e.activeUnit);
}
То есть, чтобы за свойством activeUnit не лезть в модель с которой по-пьяни можно сделать что-то, а получить его прямо из событийного обьекта ModelEvent.
Что же, будем делать "правильно". Спасибо

Добавлено через 8 минут
Цитата:
Сообщение от Dukobpa3 Посмотреть сообщение
Сложно будет сделать адекватный рендер с обработкой всех событий и слишком легко запутаться..
Не совсем понял. У меня какбэ все просто. Есть класс ModelEvent, на события которого подписываются две вьюшки, вернее одна вью - и компьютер(АI). Они получают такие события от модели. Отправляют в контроллер события OpponentEvent.
__________________
Я мало чего умею, но зато хорошо умею учиться...