What Is Django (D is silent 🔕 😶)
من اوایل میگفتم د جنگو 😂😂😂
. اسم «جنگو» از کجا اومده؟اسم این فریمورک از «جنگو راینهارت» (Django Reinhardt) اومده، یه نوازندهٔ خفن گیتار جاز اهل بلژیک که تو دهههای ۱۹۳۰ تا ۱۹۵۰ میلادی میدرخشید. اون رو یه گیتاریست افسانهای میدونن و اسمش «جنگو» یه لقب کولیتبار بوده که به معنی «من بیدارم» هست.توی مستندات رسمی جنگو اومده که اسم فریمورک از روی این نوازنده انتخاب شده و حتی پیشنهاد دادهاند که حتماً موسیقیاش رو هم گوش کنید!. تلفظش هم «جَنگو» هست با «د» بیصدا.(پایین یه موسیقی ازش میذارم اگه از این پست با ری اکشن استقبال کردید 😁)
ببین 😳
جنگو یه چارچوب (فریمورک) برای زبان پایتونه. فرض کن میخوای یه خونه بسازی. جنگو بهت یه نقشهی آماده، یه انبار مصالح پر از سیمان و آهنآلات، یه لولهکشی آماده، و حتی یه نگهبان برای درِ خونه میده. یعنی همهچیز از اول توش هست؛ احراز هویت (لاگین و ثبتنام)، مدیریت دیتابیس، پنل ادمین برای مدیریت محتوا، فرمها، کش کردن و کلی چیز دیگه. نیازی نیست بری بگردی ببینی کدوم کتابخونه برای لاگین خوبه، خودش داره.
از نظر جایگاه:
فولاستک هست؛ یعنی هم میتونه با قالبهای خودش برات صفحههای HTML بسازه (همون ظاهر سایت) و هم کارهای سنگین پشتصحنه مثل ارتباط با دیتابیس و منطق برنامه رو انجام بده.
خوبیهاش چیه؟ 🥹
· امنیت بالا: یه جورایی مثل این میمونه که ماشین رو با کمربند ایمنی و کیسههوا میفروشن. خودش جلوی حملات هکری رو میگیره.
· ساختار منظم: بهت نظم میده. اگه تیمی کار کنی، همه میدونن کد کدوم بخش باید کجا باشه.
· سریع راه میافته: واسه سایتهای خبری، فروشگاهی، شبکههای اجتماعی و کارهای درشت یه گزینهی درجهیکه.
بدیهاش چیه؟🤫
· سنگینه. برای یه پروژهی کوچیک یا یه API ساده، مثل اینه که با تانک بری شیرینی بخری. زیادیه.
· کندتر از رقباست (نسبت به فستایپی یا نودجیاس) چون همهچیز رو همزمان (سینکرون) انجام میده، مگه اینکه کلی وقت بذاری برای تنظیمات اضافی.
---
حالا مقایسه با جاوااسکریپت (نودجیاس و اکسپرس) چیه؟ 🫣
بیا رک و پوستکنده بگم: ( پوستشو بکنیم 😂)
· جاوااسکریپت (نود) مثله یه موتورسیکلت هست. سبکه، تند تند میره، تو ترافیک (درخواستهای همزمان) عالی عمل میکنه، ولی هیچکس کاپوتش رو باز نمیکنه ببینه چیز اضافی داره یا نه. خودت باید بری بگیری هندلبار (اکسپرس)، آینه (کتابخونهی احراز هویت مثل پاسپورت)، ترمز (میدلویرها) و هر چی رو جدا جدا نصب کنی. انعطافپذیری بالایی داری، هر جور دلت بخواد میتونی کد بزنی، ولی اگه بلد نباشی ممکنه موتورت آتیش بگیره (باگهای امنیتی) یا یه جا پیچت شل باشه.
· ولی جنگو (پایتون) مثله یه شاسیبلند کامل (SUV) هست. سنگینه، بنزین بیشتری میخوره (منابع سرور بیشتر)، تندتر از موتورسیکلت نیست، ولی همهچیز توش هست؛ صندلی گرمکن، کروز کنترل، دوربین دندهعقب، کیسههوا، حتی جای لیوانی. سوار میشی، پا میزنی رو گاز، میری. برای جادههای طولانی و سفرهای گروهی (پروژههای سازمانی) عالیه، اما تو کوچهپسکوچههای باریک (یه میکروسرویس کوچیک) بهدرد نمیخوره.
تفاوت کلیدی دیگه: تو جنگو خودش بهت میگه «کدت رو کجا بنویس»، ولی تو نودجیاس خودت پادشاهی و هرجور راحتتری مینویسی. انعطاف نود بالاتره ولی جنگو برات تصمیمگیری کرده که دیگه اشتباه نری.
---
حالا کی بریم سمت کدوم؟ ( مهمه 😉)
اگه قراره یه پلتفرم بزرگ بزنی، یه وبسایت خبری، یه شبکهاجتماعی کوچیک، یه سیستم داخلی برای شرکت، یا دلت میخواد با هوش مصنوعی (پایتون و کتابخونههاش) کار کنی و بشینی کنار هم، برو جنگو، ضرر نمیکنی.اگه قراره یه API ساده بزنی، یه برنامهی وقتگیر با ترافیک بالا (مثل یه چتروم زنده)، یا آدمی هستی که دوست داری همهچیز رو دستی و مطابق سلیقهی خودت بسازی، برو نودجیاس یا فستایپی.
جمعبندی نهایی:
اگه پروژهات درشته و از پایتون خوشت میاد، جنگو انتخاب اوله. اگه عاشق آزادی و سرعت بالا هستی، بزن تو جادهی نودجیاس.
حالا تو بگو
کدوم؟
جنگو ــ» ❤️
نود جی اس ــ» 👍
#آموزش
@MPL_Code