جواب کوتاه:
با ۱ تا ۳ اپ شروع کن.
اپ جدید فقط وقتی اضافه کن که *واقعاً اذیت شدی*.
جواب بلندتر:
جامعهی جنگو زیادی روی جدا کردن اپها حساسه. درسته که اپهای قابلاستفادهی دوباره خوبن،
ولی واقعیت اینه که بیشتر کدها قرار نیست جای دیگه استفاده بشن.
ساختار پیشنهادی برای شروع:
myproject/
├── core/ # مدلها، ابزارهای مشترک
├── api/ # endpoint های API
└── web/ # template ها، view ها
کی اپ جدید بسازیم؟
وقتی که:
- میخوای کد رو تو چندتا پروژه استفاده کنی
- یه اپ از ۲۰ تا مدل یا ۳۰ تا view بیشتر شد
- تیمهای جدا روی فیچرهای جدا کار میکنن
- برنامه نیاز به زمانبندی انتشار متفاوت داره
چی نسازیم؟
- اپ users با یه دونه مدل
- اپ payments با دو تا view
- ۳۰ تا اپ که هر کدوم یه مدل دارن
مثال از بیشمهندسی کردن (over-engineering):
❌ برای یه پروژه کوچیک خیلی زیاده
myproject/
├── users/
├── authentication/
├── profiles/
├── posts/
├── comments/
├── likes/
├── follows/
├── notifications/
└── ... (20 more apps)
نسخهی بهتر برای پروژههای کوچک تا متوسط:
✅ ساده و منطقی
myproject/
├── core/
│ ├── models/
│ │ ├── user.py
│ │ ├── post.py
│ │ └── social.py (likes, follows, comments)
│ └── views/
└── api/
قاعدهی من:
اپ جدید فقط وقتی بساز که بتونی دلیلش رو در یک جملهی قانعکننده توضیح بدی.
پ.ن: یادتون نره پستا رو با دوستاتون به اشتراک بذارید ❤️❤️
پارت اول ۲۰ سوال جنگو
پارت دوم ۲۰ سوال جنگو
#پارت_سوم #جنگو #django #پایتون #برنامه_نویسی
@PhiloLearn