вопрос о контроллере вида модели - PullRequest
0 голосов
/ 09 января 2011

Я недавно работал над своей игрой для iphone и натолкнулся на раздвоенный путь, когда принимал решение о дизайне своих классов.До сих пор я придерживался шаблона MVC, но меня запутала следующая ситуация:

У меня 4 кнопки отображаются визуально.Каждая кнопка состоит из контейнера UIView (который я вложил в подкласс) и 2 UIButtons (также субклассированных) как подпредставления.Когда вы нажимаете кнопку, она делает эффект переворота плюс другие вещи.Пользовательский ввод использует target-action из моего контейнера UIView в мой контроллер.Эта часть в порядке, следующая часть является дискуссионной:

Итак, я разделил представление контейнера, а также кнопки UIB, и мне нужно добавить больше данных / методов (где-нибудь), чтобы делать больше вещей.Помещение данных, которые необходимо сериализовать, и кода, не связанного с рендерингом, в классы представлений, похоже, нарушает дизайн MVC, но на данный момент для меня наиболее разумно поместить их туда.Это похоже на то, что мои подклассы - это их собственные маленькие MVC, и они кажутся изящными.Разделение данных / методов от представления к моему главному контроллеру в этом случае кажется ненужным и дополнительной работой.Как мне это делать?

Спасибо, куча.

1 Ответ

0 голосов
/ 09 января 2011

Шаблон MVC весьма полезен, поскольку позволяет повторно использовать как минимум 2 части модели MVC (обычно модель и представление), поэтому, как правило, лучший способ написания чистого кода - это избежать использования наследования и использовать вместо него делегирование. (на основе протоколов) и внедрение зависимостей (для сервисов), чтобы вы могли генерировать модульные тесты для своих систем и лучший способ обновить разработку кода

Вот несколько интересных статей:

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...