Самый абстрактный ответ
с точки зрения бэкэнд-разработчика
Связывает ввод и вывод,
создавая логику приложения
1. Обработать входящие данные (формы)
3. Запустить рендеринг, заполнить и вернуть ответ
2. Выполнить запрашиваемое действие, если запрос верный, или подготовить сообщение об ошибке в противном случае
(и API на стороне сервера)
MVP, MVVM, ...