چرا باید Django را یاد بگیریم
محمد اردوخانی

این فریم‌ورک رایگان و منبع باز (open source) است، و دارای یک جامعه پییشرفته و فعال، مستندات عالی،‌ و گزینه‌های بسیاری برای استفاده رایگان و پولی می‌باشد.

Django به دلیل ویژگی توسعه سریع، بسیار مورد تقاضا قرار می‌گیرد. ساخت برنامه پس از جمع‌آوری نیازهای مشتری زمان کمی می‌گیرد. Django به گونه‌ای طراحی شده است که بسیاری از موارد را به صورت خودکار پیکربندی می‌کند، همچنین مراقب دردسرهای توسعه وب می‌باشد، ‌بنابراین ما می‌توانیم فقط بر توسعه برنامه‌ها تمرکز کنیم.

Django به شما کمک می‌کند تا نرم‌افزارهایی را بنویسید که:

کامل هستند

Django تقریبا همه کارهایی را که توسعه‌دهندگان ممکن است بخواهند بدون پیکربندی خاصی انجام دهند را ارائه می‌دهد. از آنجا که همه آنچه که شما نیاز دارید بخشی از یک محصول است، همه موارد به صورت یکپارچه با هم کار می‌کنند،‌ از اصول طراحی سازگار پیروی می‌کند و مستندات گسترده و به روز دارد.

همه‌کاره هستند

Django می‌تواند برای ساخت تقریبا هر نوع وب‌سایتی، از سیستم‌های مدیریت محتوا و ویکی گرفته تا شبکه‌های اجتماعی و سایت‌های خبری، استفاده شود. می‌تواند با هر فریم‌ورک سمت کلاینتی کار کند،‌ و می‌تواند محتوا را تقریبا در هر فرمتی (ازجمله HTML، RSS feeds، JSON، XML و غیره) ارائه دهد.

از نظر داخلی، در حالی که انتخاب‌هایی را برای تقریبا هر عملکرد مورد نیاز شما فراهم می‌کند (مثلا چندین پایگاه داده محبوب و غیره)، می‌تواند در صورت لزوم برای استفاده کامپوننت‌های دیگر نیز توسعه یابد.
امنیت دارند

Django با ارائه فریم‌ورکی که برای "انجام کارهای درست" مهندسی شده است تا به صورت خودکار از وب‌سایت محافظت کند، به توسعه‌دهندگان کمک می‌کند از بسیاری از اشتباهات رایج امنیتی جلوگیری کنند. مثلا Django یک روش امن برای مدیریت حساب‌های کاربری و رمز عبورها، جلوگیری از اشتباهات رایج مانند قرار دادن اطلاعات session در کوکی‌ها در شرایطی که آسیب‌پذیر هستند یا ذخیره‌سازی مستقیم رمز عبور به جای هش کردن (hash) آن فراهم می‌کند.

هش کردن رمز عبور یک مقدار با طول ثابت است که با ارسال رمز عبور از طریق تابع هش رمزگذاری ایجاد می‌شود. Django می‌تواند با اجرای آن از طریق تابع هش و مقایسه خروجی با مقدار هش ذخیره‌شده،‌ بررسی کند که آیا رمز عبور وارد شده صحیح است یا خیر. با این حال،‌ به دلیل ماهیت "یک طرفه" تابع، حتی اگر یک مقدار هش ذخیره شده به خطر بیفتد،‌ برای مهاجم سخت است تا رمز عبور اصلی را به دست آورد.

Django به صورت پیش‌فرض محافظت در برابر بسیاری از آسیب‌پذیری‌ها، از جمله تزریق SQL،‌ cross-site scripting (حمله Xss)، cross-site request forgery (حمله CSRF)، و clickjacking (به هکرها اجازه می‌دهد تا موارد مخرب را تحت پوشش محتوا در یک سایت قانونی مخفی کنند) را فعال می‌کند.

مقیاس‌پذیر هستند

Django از یک معماری غیر اشتراکی مبتنی بر کامپوننت استفاده می‌کند (هر قسمت از معماری مستقل از بخش دیگر است و از این رو در صورت نیاز می‌تواند جایگزین شود یا تغییر یابد). داشتن یک جدایی واضح بین قسمت‌های مختلف به این معناست که می‌تواند با افزودن سخت‌افزار در هر سطح، سرور caching، سرورهای پایگاه داده،‌ یا سرورهای برنامه، برای افزایش ترافیک مقیاس‌پذیر باشد. برخی از شلوغ‌ترین سایت‌ها، Django مقیاس‌شده را با موفقیت اعمال کرده‌اند تا خواسته‌های خود را برآورده سازند (مثل اینستاگرام و Disqus).

قابلیت نگهداری دارند

کد Django با استفاده از اصول و الگوهای طراحی نوشته شده است که باعث ایجاد کد قابل استفاده مجدد و قابل نگهداری می‌شود. به طور خاص، از اصل عدم تکرار کد (DRY) استفاده می‌کند، بنابراین هیچ تکرار غیرضروریی وجود ندارد و میزان کد را کاهش می‌دهد. این فریم‌ورک همچنین گروه‌بندی عملکردهای مرتبط را به برنامه‌های قابل استفاده مجدد ترویج می‌دهد، و در سطح پایین‌تر، کدهای مربوطه را به ماژول‌ها (در امتداد الگوی MVC) دسته‌بندی می‌کند.

قابل حمل هستند

Django در پایتون نوشته شده است،‌ که بر روی پلت‌فرم‌های زیادی اجرا می‌شود. این بدان معناست که شما به هیچ پلت‌فرم سرور خاصی وابسته نیستید و می‌توانید برنامه‌های خود را بر روی موارد بسیاری همچون لینوکس،‌ ویندوز و Mac OS X اجرا کنید. علاوه‌براین،‌ Django به خوبی توسط بسیاری از ارائه‌دهندگان web hosting پشتیبانی می‌شود، که اغلب زیرساخت‌های خاص و مستنداتی برای هاستینگ سایت‌های Django ارائه می‌دهند.

Django چقدر محبوب است؟

هیچ اندازه‌گیری قطعی و در دسترسی برای محبوبیت فریم‌ورک‌های سمت سرور وجود ندارد. بهتر است بگوییم که آیا Django به اندازه کافی محبوب است تا از مشکلات پلت‌فرم‌های نه چندان محبوب جلوگیری کند؟ آیا روند تکامل را ادامه می‌دهد؟ آیا در صورت نیاز به آن می‌تواند کمک‌کننده باشد؟ آیا در صورت یادگیری Django فرصتی برای شما وجود دارد که بتوانید کسب درآمد کنید؟

با توجه به تعداد سایت‌های پرکاربرد که از Django استفاده می‌کنند،‌ تعداد افرادی که در codebase همکاری می‌کنند، و تعداد افرادی که هم به صورت رایگان و هم پولی از آن پشتیبانی می‌کنند، پس می‌توان گفت بله، Django یک فریم‌ورک محبوب است.

سایت‌های مشهوری که از Django استفاده می‌کنند عبارتند از Pinterest، Instagram، Disqus، Mozilla،Knight Foundation، MacArthur Foundation، National Geographic و بسیاری موارد دیگر.

نظرات کاربران در رابطه با این دوره

جهت ثبت نظر باید در سایت عضو شوید و یا وارد سایت شده باشید .
logo-samandehi