TGViewer
PhiloLearn | فیلولرن PhiloLearn | فیلولرن @philolearn · 1.47K subscribers
Post #1826 386
۱۱. چطور یک پروژه بزرگ Django رو ساختاردهی کنم؟

جواب کوتاه:
بر اساس ویژگی (Feature) ساختار بده، نه بر اساس لایه (models/views/serializers).


❌ ساختار بد (بر اساس لایه)

myproject/
├── models/
│ ├── user.py
│ ├── post.py
│ └── comment.py
├── views/
│ ├── user_views.py
│ ├── post_views.py
│ └── comment_views.py
├── serializers/
│ ├── user_serializers.py
│ ├── post_serializers.py
│ └── comment_serializers.py
└── ...


مشکل:
برای فهمیدن یه فیچر باید بین ۵ تا فایل بپری. سرعتت افتضاح می‌شه.

✅ ساختار خوب (بر اساس فیچر)

myproject/
├── users/
│ ├── models.py
│ ├── views.py
│ ├── serializers.py
│ ├── urls.py
│ └── tests.py
├── posts/
│ ├── models.py
│ ├── views.py
│ ├── serializers.py
│ ├── urls.py
│ └── tests.py
└── core/
├── utils.py
├── middleware.py
└── base_models.py


اینجوری هر فیچر همه فایل‌های مربوط به خودش رو داره.
خوانایی بالا می‌ره و نگهداری راحت‌تر می‌شه.


🟦 برای پروژه‌های خیلی بزرگ

وقتی هر app خیلی گنده شد، می‌تونی داخلش فولدرهای لایه‌ای بسازی:

myproject/
├── users/
│ ├── models/
│ │ ├── user.py
│ │ ├── profile.py
│ │ └── permissions.py
│ ├── views/
│ │ ├── auth.py
│ │ ├── profile.py
│ │ └── admin.py
│ ├── serializers/
│ ├── tests/
│ └── urls.py
└── ...


این ساختار برای تیم‌های بزرگ یا پروژه‌های enterprise عالیه.


قانون من:
کدی که با هم استفاده می‌شه باید کنار هم باشه.
اگه برای پیدا کردن یک فیچر باید اسکرول کنی یا بپری این‌ور و اون‌ور، ساختارت اشتباهه.

پ.ن: یادتون نره پستا رو با دوستاتون به اشتراک بذارید ❤️❤️

پارت اول ۲۰ سوال جنگو
پارت دوم ۲۰ سوال جنگو
پارت سوم ۲۰ سوال جنگو
پارت چهارم ۲۰ سوال جنگو
پارت پنجم ۲۰ سوال جنگو
پارت ششم ۲۰ سوال جنگو
پارت هفتم ۲۰ سوال جنگو
پارت هشتم ۲۰ سوال جنگو
پارت نهم ۲۰ سوال جنگو
پارت دهم ۲۰ سوال جنگو

#پارت_یازدهم #جنگو #django #پایتون #برنامه_نویسی

@PhiloLearn
  • ❤ 6
More from @philolearn
  1. Oct 12, 2026قطعی اینترنت یه حالتی برای من به وجود آورده که هر ابزار آنلاینی که می‌بینم دائما به این فک…
  2. Oct 12, 2026خب پسرم پس از تلاش های متعدد بلاخره یه برنامه نویس خفن اسمبلی شده... #fun @PhiloLearn
  3. Oct 4, 2026درود همگی 👋 اگه جنگ نشه، سیل نیاد و اتفاق عجیبی نیفته، قراره یه ایونت برنامه نویسی برگزار…
  4. Oct 1, 2026Site Reliability Engineering, 2nd Edition by Betsy Beyer, Chris Jones, Christof Leng, Davi…
  5. Oct 1, 2026🌶🔥 @PhiloLearn
  6. Sep 30, 2026چگونه وب سایتمان AI generated به نظر نرسد: @PhiloLearn
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →