Должен ли я разделить большой проект Django на множество приложений?

Укороченная версия:
У меня есть проект Django, находящийся в стадии разработки и тестирования (еще не запущенный в производство), который постепенно становится "не таким уж маленьким", и в последнее время я задумывался о том, чтобы разделить вещи, чтобы они были управляемыми.

Макет проекта:
Проект включает в себя различные многократно используемые приложения, не разработанные мной, такие как аватар, django_evolution, компрессор и более крупное монолитное, я бы сказал, приложение, разработанное мной, которое содержит основные функциональные возможности сайта. Файл views достигает 1 тыс. Строк, и существует 12 моделей, но функциональные возможности почти все на месте (т.е. я не ожидаю, что они вырастут в 10 раз).

Сомнение:
Разграничение моделей и представлений на три "группы" может привести к разделению на три приложения, но:

  • не было бы возможности повторного использования, так как приложения очень тесно связаны друг с другом
  • Существует проблема некоторых "общих областей", таких как домашняя страница, хотя я читал, что они могут быть размещены вне любого проекта.

Напоследок мой вопрос:
Могу ли я получить какое-либо преимущество, разделив свое приложение?
Если бы это было только для удобства чтения и поддержки "больших" файлов, я мог бы просто разбить эти файлы и поместить их в папку (как предлагают ответы на многие связанные вопросы).

1 ответ

Решение

Вам не нужно разбивать ваше приложение на несколько приложений, если это не имеет смысла. Но вы можете сгруппировать ваши функции просмотра в разные файлы. Это было бы первым шагом. Нет необходимости класть их всех в одно место.

Другие вопросы по тегам