должна ли модель данных содержать контроллер? (MVC) - PullRequest
1 голос
/ 07 февраля 2020

Я реализую игру, в которой у игрока есть лодка, и ему нужно двигаться со своей лодкой и собирать вещи. у игрока также есть счет и жизнь.

Я спроектировал систему как шаблон MVC, и сейчас у меня есть объект boatModel, который содержит данные о лодке, BoatController, который отвечает за обработку движений.

Я подумал о создании объекта PlayerModel, в котором хранятся данные о игроке, включая жизнь, счет и BoatController. это потому, что концептуально у игрока есть свой собственный «водитель лодки»

Имеет ли какой-то смысл, что у модельного объекта есть контроллер «has-a» (согласно шаблону MVC)?

Если нет, как это будет лучше спроектировать?

Спасибо.

1 Ответ

1 голос
/ 07 февраля 2020

Не рекомендуется иметь контроллер внутри модели. Тем не менее, шаблон посетителя должен быть хорошим подходом к вашей проблеме, хотя у вас есть только один конкретный класс (Ваша модель).

Шаблон посетителя (Википедия)

enter image description here

...