Я разрабатываю супер марио для Android. Я пытаюсь следовать шаблону MVC.MVC - звук или модель?
Ядро программы состоит из:
- класс, представляющий модель под названием
World
. - класс, представляющий вид под названием
Renderer
и - класс для контроллера под названием
TouchInput
.
Каждый тик, сначала вызывается метод обновления Миров, в свою очередь вызывающий методы обновления всех объектов домена (марио, goombas, powerups). Затем вызывается метод drawer Renderer, который запрашивает объекты модели и домена для своего состояния и отображает их на экране.
Теперь я хочу добавить класс звука. Звуки инициируются событиями объектов домена, например: столкновение марио с врагом. Означает ли это, что объекты домена модели должны напрямую обращаться к методам звукового класса? Означает ли это, что мне нужно, чтобы все объекты домена следовали за наблюдаемым шаблоном, и чтобы класс звуков подписался на их события? Не могли бы вы предложить, какой подход следует придерживаться, чтобы мой дизайн стал правильным?