PassFront
  1. PassFront
  2. База знаний
  3. Продвинутые темы

Что такое MVC?

Продвинутые темы

MVC (Model-View-Controller) — это архитектурный паттерн, разделяющий приложение на три части: модель (данные), представление (интерфейс) и контроллер (логика связи между ними).

Три компонента

  • Model (модель) — данные и бизнес-логика; не знает о UI.
  • View (представление) — отображение данных пользователю; UI.
  • Controller (контроллер) — обрабатывает ввод пользователя, обновляет модель и выбирает представление.

Поток

Пользователь → Controller → обновляет Model → Model меняет View → пользователь видит

Зачем нужен

  • Разделение ответственностей — данные, отображение и логика раздельно.
  • Переиспользование и независимая разработка/тестирование частей.
  • Поддерживаемость — изменения в одной части меньше затрагивают другие.

MVC на фронтенде

Классический MVC применяли в Backbone, Angular.js. Современный React ближе к компонентному подходу с однонаправленным потоком (Flux/Redux), но идея разделения данных и отображения сохраняется.

Родственные паттерны

MVP, MVVM (двусторонний биндинг View↔ViewModel, как в Vue/Angular).

Коротко для собеседования

MVC — разделение на Model (данные/логика), View (интерфейс) и Controller (обработка ввода, связь). Даёт разделение ответственностей и поддерживаемость. Классика бэкенда и старых фронт-фреймворков; современный React — компонентный однонаправленный поток. Родственники — MVP, MVVM.

Другие вопросы раздела