|
|
« Предыдущая тема | Следующая тема » |
Опции темы | Опции просмотра |
|
|
|||||
Регистрация: Aug 2013
Сообщений: 73
|
Взаимодействие двух классов представления.
Доброго времени суток. Возник такой вопрос... Есть два класса, один из которых представляет героя игры, а именно его отображение:
public class HeroView extends Sprite { public function HerowView( ) { // код конструктора } } public class InterfaceView extends Sprite { public function InterfaceView( ) { // код конструктора } } Можно написать весь код в одном классе, тогда проблем не возникнет, но есть же ещё варианты? Наверное нужно читать MVC... |
|
|||||
Banned
[+4 24.02.14]
[+4 07.11.13] [+ 13.03.14] Регистрация: Mar 2013
Сообщений: 1,864
|
Цитата:
|
|
|||||
Регистрация: Aug 2013
Сообщений: 73
|
По книжке Мука имею общее представление о MVC, но сейчас запутался в своём же коде.
|
|
|||||
Регистрация: Aug 2010
Сообщений: 22
|
Паттерн Mediator вполне решил бы проблему связывания объектов одного уровня в отношении "многие ко многим".
http://ru.wikipedia.org/wiki/Посредн...роектирования)) |
|
|||||
Медиатор, то оно конечно да.
Но только не могу сказать, что герой и магазин - это объекты одного уровня. Можно чуть больше подробностей? Какие задачи у героя. Что такое герой в данном контексте. Что такое магазин в данном контексте?
__________________
Кто к нам с чем для чего - тот у нас того от того. |
|
|||||
Регистрация: Mar 2012
Адрес: г.Новосибирск
Сообщений: 381
|
скорее всего должны общаться контроллеры героя и магазина.
|
|
|||||
Регистрация: Aug 2013
Сообщений: 73
|
Игра представляет из себя подобие тамагочи. В классе "герой" находится код для отображения питомца. Добавление частей тела с помощью addChild и и слушатели событий на действия игрока. В классе "интерфейс" находятся продукты, которыми можно покормить героя и элементы интерфейса (окна, панели и т.д.). Здесь также использую addChild для добавления объектов на сцену и некоторые слушатели для реакции на действия.
|
|
|||||
В целом питомец и магазин это совсем разные модули.
Если говорить об мвц то питомец это будет свой контроллер-модель-вью. магазин - своя такая же триада. Но например контроллер магазина может иметь доступ к модели питомца. Мы купили в магазине нечто, оно сразу попало в модель питомца, модель питомца сообщила об этом. Вью питомца услышала это сообщение и перерисовалась. Смешивать два логически разных модуля в один не ок.
__________________
Кто к нам с чем для чего - тот у нас того от того. |
|
|||||
Регистрация: Aug 2010
Сообщений: 22
|
Dukobpa3,
Цитата:
Цитата:
Цитата:
|
|
|||||
Регистрация: Aug 2013
Сообщений: 73
|
У меня основная сложность с классом контроллера. Дальше всё более менее понятно. Например в модели вызывается dispatchEvent, а в вью слушатель принимает этот вызов и рисует отображаемый объект. Что в данном случае должно находится в контроллере?
|
Часовой пояс GMT +4, время: 06:19. |
|
« Предыдущая тема | Следующая тема » |
Опции темы | |
Опции просмотра | |
|
|