Django обычно описывают как MTV: Model, Template, View. Это роли фреймворка, а не обязательная архитектура всей бизнес-логики; сложный проект может дополнительно использовать сервисные слои и модули доменов.
Какой паттерн структуры проекта используется в Django? В чём его минусы и какие есть альтернативы?
Django обычно описывают как MTV: Model, Template, View. Это роли фреймворка, а не обязательная архитектура всей бизнес-логики; сложный проект может дополнительно использовать сервисные слои и модули доменов.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Django обычно описывают как MTV: Model, Template, View. Это роли фреймворка, а не обязательная архитектура всей бизнес-логики; сложный проект может дополнительно использовать сервисные слои и модули доменов.
Model отвечает за данные, template — за отображение, view — за обработку запроса; часть роли контроллера выполняет инфраструктура Django. При неаккуратном росте логика расползается по views, models и signals. Альтернатива не обязательно другой фреймворк: можно выделить сценарии приложения и границы зависимостей. Дополнительные слои оправданы сложностью, иначе они лишь увеличивают число переходов по файлам.
Источник: docs.djangoproject.com.