MVC (эмвиси) -- что это в программировании
Primary tabs
Forums:
MVC -- сокращение от ""Model View Controller"" (Модель, Вид/Представление, Контроллер) -- концепция разбиение задачи ответа приложения в ответ на какой-либо запрос на три части (в общем случае):
- Работу контроллера (обычно логика верхнего уровня, то есть тут принимаются ключевые решения, какой фунционал запускать)
- Работу модели (обычно работа с данными, представление разных сущностей в системе, тут может располагаться и код работающий в СУБД)
- Работу представления (особенно если результаты отправляются пользователю для демонстрации в том или ином виде, напр. для сайтов в файлах представления, данные "оборачиваются" html-тегами)
-- в целом это довольно абстрактная идея, преследующая цели декомпозии и уменьшения связности, и в конкретных системах/системах соглашений она может представать в различном свете (например в ответе на вопрос: где должно быть больше кода и логики -- в модели или контроллере?).
Также можно добавить, что:
- Пользователь видит представление
- Контроллер отдает пользователю представление (как-то его параметризируя)
- Контроллер, если требуется для ответа на конретный запрос пользователя, общается к модели (или нескольким моделям) для получаения данных (или выполнения других действий CRUD) и передает полученные данные представлению, чтобы там они были оформлены в окончательном виде для показа пользователю.
Примеры реализации MVC
Концепции MVC следуют некоторые программные каркасы (фрэймворки).
Например:
- Yii (PHP)
- Symfony (PHP)
- SimpleMVC (учебный фрейморк от IFF)
- Log in to post comments
- 3379 reads