|
|
|||||
Регистрация: May 2013
Сообщений: 18
|
Вопрос про MVC
Всем здравствуйте. Сейчас изучаю MVC шаблон (парадигму) и столкнулся с некоторым не понимаем.
Вопрос №1: Допустим в главной модели (GlobalModel) есть ещё 2 (CharacterModel, LocationModel). И изменилась одна из под-моделей. Как правильно осуществить диспетчеризацию? - в каждую под-модель передавать GlobalModel и из неё вызывать диспетчерезацию? - или делать bubble (но это не удобно) Вопрос №2: Как правильно диспетчирезировать события изменения модели? - использовать только одно событие "Event.CHANGE" или создавать для этого свои классы событий |
|
|||||
Если не используете специализированных фреймворков:
1) Как вам удобнее. Разве не контроллер должен дергать вьюхи, рассказывая, что изменилась моделька? Модель же изменяется контроллером? 2) Как вам удобнее.
__________________
Чтобы доказать, что вы не робот, причините вред другому человеку. |
|
|||||
Banned
[+1 06.12.14]
[+1 18.12.14] [+1 30.12.14] Регистрация: Aug 2014
Сообщений: 461
|
Цитата:
Добавлено через 2 минуты Хотя я наверно не правильно понял Ваши слова. Когда я прочел Ваши слова, то в голове нарисовалась картинка из слов сказанных не Вами, но гласящих, что контроллер включает нужную вью. Добавлено через 2 минуты Вы случаем не об этом?) |
|
|||||
1 - пусть каждый вью слушает свою модель..не обязательно таскать все модели на все случаи жизни в одной главной модели...одна (главная модель) просто фигурирует в большинстве примеров описывающих классическое мэвэвцэ.
2 в вашем случае контроллер может сказать модели сколько у нее осталось жизней..вьюха слушает изменение ХП из модели и сама принимает решение сколько лампочек ей зажечь.
__________________
http://cleptoman.free-lance.ru achivements: дважды благословлен на воровство. осеяный благодатью |
|
|||||
Цитата:
Но у меня в голове контроллер связывает данные и вьюхи. Соответственно следит, что модель изменилась и говорит вьюхам - отобразите. Ну и сам конечно меняет модель (данными с сервера, например). Конечно бывают исключения, когда из вьюхи быстрее узнать, что модель изменилась. Короче я не за строгое соблюдение парадигм (и табу хехе). То есть, если робота ударили, то об этом узнает контроллер, он пишет в модель новое состояние, и говорит аватару робота - обнови инфу из модели.
__________________
Чтобы доказать, что вы не робот, причините вред другому человеку. |
|
|||||
Регистрация: May 2013
Сообщений: 18
|
Правильно ли я понимаю, что код вроде этого, должен находиться в модели:
var count:uint; var timer:Timer = new Timer(1000); timer.addEventListener(TimerEvent.Timer, onTimer); function onTimer(e:TimerEvent):Void { count++; } Тобишь контролер должен/может заставить модель само измениться? |
|
|||||
Banned
[+1 06.12.14]
[+1 18.12.14] [+1 30.12.14] Регистрация: Aug 2014
Сообщений: 461
|
Цитата:
|
|
|||||
ну это мы можем щас тут раздуть много всего. и про декораторы для лампочек и про медиаторы и прочее..
атвору - суть проста: вьюха - стостоит из трех лампочек ,имеет ссылку на моедль и слушает ее изменение..самостоятельно принимает решение сколько чего и как отобразить в зависимости от изменениях в модели. контроллер имеет ссылки на модель и вьюху (с последней работает напрямую исходя из контекста употребления и здравого смысла). слушает интерактиыне события вьюхи и меняет модель. это как на картинках...в жизни все может быть несколько сложней
__________________
http://cleptoman.free-lance.ru achivements: дважды благословлен на воровство. осеяный благодатью |
|
|||||
Регистрация: May 2013
Сообщений: 18
|
Цитата:
|
|
|||||
Цитата:
__________________
Чтобы доказать, что вы не робот, причините вред другому человеку. |
Часовой пояс GMT +4, время: 16:20. |
|
« Предыдущая тема | Следующая тема » |
Опции темы | |
Опции просмотра | |
|
|