Я размышлял над шаблонами проектирования в течение некоторого времени, и я только начинаю видеть, как я мог бы начать включать некоторые из них более преднамеренно в мои разработки. Тем не менее, я до сих пор смущен об их обращении с MVC в начале книги и о том, как это относится к остальной части книги.
Большинство фреймворков, с которыми я работал - Spring, Yii, ASP.NET и даже Objective-C Cocoa (UIKit) - удовлетворяют парадигме MVC. Я получаю MVC, потому что для меня это полезный способ классификации объектов и того, как они должны сообщать или взаимодействовать друг с другом. Плюс, эти рамки видны для вас, даже если вы не собираетесь думать о MVC.
Я также чувствую, что я понимаю предположение о шаблонах дизайна: они действительно не любят подклассирование, им нравятся абстрактные интерфейсы, и они стремятся к свободному соединению. Я не могу сказать, что я полностью понимаю все шаблоны и насколько они полезны, но я чувствую это.
Мой вопрос заключается в следующем: что такое взаимодействие между MVC и шаблонами проектирования? Что они получили в первой главе книги с примером приложения MVC? Являются ли определенные шаблоны проектирования просто не релевантными в парадигме MVC? Интересно, например, как шаблон команды должен вписываться в MVC. Это кажется невероятно полезным, но мы создаем CommandModel
и CommandController
для отправки другим контроллерам? Разве мы просто создаем объект Command
, как это предписано в книге? В принципе, мне интересно, полностью ли немыслимы идеи MVC и Design Patterns, и я просто не понимаю, или если есть некоторые шаблоны, которые не вписываются в форму.