Sobes.tech
Назад к вопросам
Senior
5

Что такое паттерн MVC?

Компании, где спрашивали
Octo

Ответ от нейросети

sobes.tech AI

Паттерн MVC (Model-View-Controller) — это архитектурный шаблон, разделяющий приложение на три компонента:

  • Model (Модель) — отвечает за бизнес-логику и данные. Хранит состояние приложения и управляет им.
  • View (Представление) — отвечает за отображение данных пользователю. Получает информацию из модели и визуализирует её.
  • Controller (Контроллер) — обрабатывает пользовательский ввод, взаимодействует с моделью и обновляет представление.

Такое разделение позволяет улучшить поддержку и расширяемость кода, облегчает тестирование и повторное использование компонентов.

Пример на Java (упрощённый):

// Model
class User {
    private String name;
    public String getName() { return name; }
    public void setName(String name) { this.name = name; }
}

// View
class UserView {
    public void printUserDetails(String userName) {
        System.out.println("User: " + userName);
    }
}

// Controller
class UserController {
    private User model;
    private UserView view;

    public UserController(User model, UserView view) {
        this.model = model;
        this.view = view;
    }

    public void setUserName(String name) {
        model.setName(name);
    }

    public void updateView() {
        view.printUserDetails(model.getName());
    }
}

Так контроллер управляет моделью и обновляет представление.