77
MVC – это скорее архитектурный паттерн. MVC в основном относится к
пользовательскому интерфейсу / уровню взаимодействия приложения. Все еще
понадобится уровень бизнес-логики, может быть, какой-то уровень обслуживания
и уровень доступа к данным.
Диаграмма шаблона проектирования MVC представлена на рисунке 2.26.
Рис. 2.26. Диаграмма шаблона проектирования MVC
Модель содержит только чистые данные приложения, она не содержит
логики, описывающей, как представить данные пользователю.
Представление представляет данные модели пользователю. Представление
знает, как получить доступ к данным модели, но не знает, что означают эти
данные или что пользователь может сделать, чтобы манипулировать ими.
Контроллер существует между представлением и моделью. Он слушает
события, вызванные представлением (или другим внешним источником), и
выполняет соответствующую реакцию на эти события. В большинстве случаев
реакция заключается в вызове метода на модели. Поскольку представление и
модель связаны через механизм уведомления, результат этого действия
автоматически отражается в представлении.
Спроектированное приложение состоит из набора программных модулей
на языке PHP (рисунок 2.27).