MVC (Model-View-Controller) — архитектурный паттерн, разделяющий приложение на три взаимосвязанных компонента:
- Модель (Model): Представляет данные и бизнес-логику приложения. Независима от пользовательского интерфейса.
- Вид (View): Отвечает за отображение данных из Модели пользователю и взаимодействие с ним. Не содержит бизнес-логики.
- Контроллер (Controller): Получает ввод от пользователя (обычно через Вид), обрабатывает его, обновляет Модель и, при необходимости, указывает Виду обновить свое представление. Действует как посредник между Моделью и Видом.
Преимущества MVC:
- Разделение ответственности.
- Улучшенная поддерживаемость и масштабируемость.
- Упрощенное тестирование (компоненты можно тестировать изолированно).
- Возможность параллельной разработки разными командами (например, UI-разработчики работают над Видом, бэкенд-разработчики — над Моделью).
- Потенциальная возможность использовать разные Виды для одной Модели (например, для веб и мобильного приложения).