Pull to refresh

Comments 18

У вас по моему превратное представление о MVC.
Суть MVC отделить мух от котлет отделить логику от вывода. Вид не должен знать ничего о модели, между ними прослойка — контроллер, а вы передаете в вид ссылку на модель да еще и подписываетесь на изменения. Для чего тогда нужен контроллер?
Дебаты о том, каким должно быть правильное MVC на AS3, продолжаются и по сей день :)
Упс, писал думая о своем ( отношение медиатора и вьюкомпонента в pureMVC), конечно вид меняется в зависимости от изменения модели, хотя обычно все равно через прослойку, прослойка играет роль интерфейса с минимальным набором методов и управляет классом вида учитывающим особенности конечной реализации. Таким образом вид отделяется от общей структуры и изменение одного никак не влияет на другое.
Прошу прощения за путаницу.
zeksa, у вас большой опыт в написании игр?

Дело в том, что такие подходы, особенно если это касается небольших Flash игр не выживают. Особенно когда дело касается игр. Игра, даже небольшая — это очень живой проект с динамичными изменениями и очень неопределенными требованиями — при дальнейшем развитии проекта и внедрении фич весь паттерн MVC начнет трещать по швам, т.к. фичи вдруг перестанут на него «натягиваться». Так зачем что-то сейчас проектировать. если оно в конечном итоге превратится в кашу.

Если все-таки хотите проектировать — обратите внимание на компонентный подход — обычно именно его используют при разработке игр, например, Unity 3D, PushButton Engine, да те же Аллоды: Онлайн.

Но компонентый подход не работает (да и любой абстрактный подход, тот же MVC) без редактора — инструмента, в котором можно быстро собрать запчасти в целое и настроить их — в этом офигенный плюс Unity 3D и провальный недостаток PushButton Engine — они обещали редактор, но так его и не сделали.

А еще лучше — взять обычный flixel и не заморачиваться

P.S.
Сорри, накипело
если что-то «не натягивается» тогда к mvc можно еще и адаптер применить
За PureMVC ничего толкового сказать не могу. Изучение его пока в планах.
Насчет самого MVC — действительно экономит время и силы. Особенно если связывать с тем же box2d или WCK на AlchemyPort.
PureMVC — обязательно к изучению. Для глубокого понимания MVC. Попробуйте его на каком-нибудь небольшом проекте. Но использовать его в коммерческом проекте я бы не рекомендовал.
Избыточность кода там большая — это минус. Но для постижения дзен — согласен, пробывать надо.
Не работоспособный код для реальных проектов в жанре action. Вы на каждый кадр используете какое-то дикое количество new и события на тривиальные вещи. Просто попробуйте не один кораблик, а сотню, + ai, фон, анимацию, пули и эффекты партиклами.

P.S. и если где-то в коде есть addEventListener, то где-то в коде должен быть removeEventListener. Даже если вы weak-links включили. Чтобы спать спокойно :)
Я написал простейший метод MVC на AS3, для новичков, так сказать. Чтобы всё было понятно.
А с removeEventListener() не доглядел, исправлю для порядка.
Сколько можно писать о MVC на хабре?
привык так писать
тем более работая с box2d — по нему в большинстве мануалов есть префикс, скорее всего сокращённо от my_bariable
Sign up to leave a comment.

Articles