Лучшая архитектура в Django - это разные приложения. или одно приложение для разных компонентов?
Я намеревался иметь приложение. где я хочу иметь разные вещи, имеющие отношения друг с другом, и хочу знать, должен ли я иметь их как разные модели или как разные приложения. Очевидно, что если это студент, преподаватель в LMS, то они являются необходимым компонентом LMS, а если это Работа, Профессионал и Компания, то с работой могут быть разные вещи, у профессионала может быть свой полный профиль с различными функциями, у компании может быть различные списки каталогов и т. д., как функции.
Поэтому компания и профессионалы, которые являются пользователями, также должны быть такими же разными. Программы. а работа как другое приложение. Будет ли это хорошо? как приложение Джобс. Не всегда везде нужны профессиональные данные или все данные работодателя, кроме имени. Так что кажется, что удобнее иметь их как diff. приложения, так что он может быть использован в другом месте. Так это правильный путь?
Или же
Поскольку я также хочу, чтобы этот проект был гибким, будет ли вышеупомянутое делать его более сложным? И я должен просто относиться к ним как к разнице. модели вместо дифф. Программы. Компания и Профессионал являются пользователями, для которых django также предоставляет функции профиля. Так это правильный путь?
Какой способ лучше?
заранее спасибо.
1 ответ
Здесь нет точного ответа, так что это мое мнение.
Всегда хорошо иметь несколько приложений, а не одно большое приложение. Причины:
- приложения становятся меньше, и легче поддерживать небольшие куски кода;
- структура проекта становится более понятной, мне просто нужно посмотреть на файловый менеджер, чтобы увидеть основные части проекта;
- взаимодействие между приложениями становится явным: легко тестировать и предотвращать ненужную связь.
Не каждое приложение Django должно быть подключаемым. Можно иметь два приложения, которые зависят друг от друга (если вы не собираетесь распространять их отдельно). Это как две зависимые функции: в этом нет ничего плохого.