همه چیز درباره فریم ورک Django


جنگو django چیست؟



فریم‌ورک (Framework) چیزی نیست جز مجموعه‌ای از ماژول‌ها که کار توسعه را آسان‌تر می‌کند. فریم‌ورک‌ها به شما این امکان را می‌دهند که به جای اینکه برنامه‌ها و وب‌سایت‌ها را از ابتدا ایجاد کنید، با استفاده از یک منبع موجود و آماده این کار را انجام دهید.

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

django یا جنگو، یک فریم‌ورک متن‌باز، رایگان و سطح بالای پایتون است که توسعه‌ی سریع و طراحی تمیز و کاربردی را برای برنامه‌های وب امکان‌پذیر می‌سازد. این فریم‌ورک که توسط توسعه‌دهندگانی باتجربه‌ ساخته شده است، بسیاری از دردسرهای توسعه وب را برطرف می‌کند؛ بنابراین بدون اینکه بخواهید همه‌چیز را از ابتدا کدنویسی کنید، می‌توانید بر روی نوشتن برنامه‌ی خود تمرکز کنید Django این امکان را به توسعه‌دهندگان می‌دهد که در هنگام ساخت هر پروژه‌ای بتوانند از کتابخانه‌ها استفاده کنند. برخی از کتابخانه‌های محبوب عبارت‌اند از: فریم‌ورک Django REST که مسئول ساخت رابط‌های برنامه‌نویسی اپلیکیشن (APIها) است، Django CMS که برای مدیریت محتوای وب‌سایت طراحی شده است، و Django-allauth که مجموعه‌ای یکپارچه از برنامه‌های جنگو برای احراز هویت، ثبت‌نام، مدیریت حساب و احراز هویت حساب کاربری شخص ثالث است.. رویکرد Batteries included در جنگو به این معنی است که این فریم‌ورک همه‌ی امکانات لازم برای توسعه‌ی یک برنامه‌ی کاربردی کامل را شامل می‌شود. Django قالب‌بندی HTML، مسیردهی URL، نگاشت رابطه به شئ (ORM) و مدیریت نشست را ارائه می‌دهد و این به توسعه‌دهندگان کمک می‌کند تا نیازی به جست‌وجوهای آزاردهنده برای ابزارهای شخص ثالث نداشته باشند. پکیج‌های جنگو به شما کمک می‌کنند تا به سرعت هر چیزی، از ربات‌های سخنگو گرفته تا راه‌حل‌های پیچیده‌ی مبتنی بر GPS را ایجاد کنید.

جنگو از گذشته تا حال



فریم‌ورک Django توسط Adrian Holovaty و Simon Willison توسعه‌دهندگانی که در روزنامه Lawrence Journal-World در کانزاس کار می‌کردند، طراحی شد. در آن زمان، آدریان و سایمون با PHP کدنویسی می‌کردند. اما از آنجایی که وب‌سایت آن‌ها نیاز به به‌روزرسانی سریع داشت، رسیدن به ددلاین‌ها دشوار بود. آدریان و سایمون به چیزی نیاز داشتند که بتوانند به‌سرعت وب‌سایت را با آن بسازند. آن وقت بود که آن‌ها تصمیم گرفتند از پایتون استفاده کنند.

آن‌ها بعدها شروع به کار بر روی جنگو کردند تا کدنویسی را ساده‌تر و مؤثرتر کنند. در سال 2005، جنگو به عنوان یک پروژه‌ی متن‌باز به صورت عمومی منتشر شد. زمانی که جامعه جنگو شکل گرفت، توسعه‌ی آن آغاز شد و تعداد وب‌سایت‌هایی که از جنگو استفاده می‌کردند به سرعت افزایش یافت. برخی از بهترین برنامه‌های ساخته‌شده با جنگو عبارت‌اند از Instagram ،Youtube ،Pinterest ،Dropbox و Spotify. هرساله برنامه‌های جدیدی به لیست سایت‌های ساخته شده با جنگو اضافه می‌شوند و شرکت‌های مختلفی نیز شروع به استخدام برنامه‌نویس جنگو می‌کنند. امروزه، جامعه‌ی Django بیش از 11000 توسعه‌دهنده از 166 کشور را با یکدیگر متحد کرده است.

چرا جنگو (Django) برای توسعه وب مناسب است؟



در میان فریم‌ورک‌های پایتون، Django اغلب به عنوان بهترین فریم‌ورک برای توسعه‌ی وب‌اپلیکیشن‌ها در نظر گرفته می‌شود. حتی در نظرسنجی توسعه‌دهندگان Stack Overflow در سال ۲۰۱۸ در لیست محبوب‌ترین فریم‌ورک‌ها قرار گرفت. Django از اصل «دوباره انجامش نده (Don’t Repeat Yourself)» پیروی می‌کند و این، فریم‌ورک Django را از نظر راندمان زمانی کارآمد می‌کند. به عبارت دیگر، نیازی به بازنویسی کدهای موجود نیست؛ زیرا جنگو این امکان را به شما می‌دهد که وب‌سایت خود را مانند قطعات یک مجموعه لگو در کنار یکدیگر قرار دهید. این فریم‌ورک برای سیستم‌های با حجم بالای اطلاعات مناسب است و به لطف بسیاری از ابزار‌های کمکی می‌تواند زمان توسعه را کاهش دهد.

به گفته‌ی بنیاد نرم‌افزار جنگو (Django Software Foundation)، جنگو «برای رسیدن به ددلاین‌های فشرده‌ی خبرگزاری‌ها و درعین‌حال برآورده کردن الزامات سخت‌گیرانه‌ی توسعه‌دهندگانِ باتجربه، ساخته شد.» امروزه جنگو با شعار «The web framework for perfectionists with deadlines» شناخته می‌شود. به لطف سینتکس ساده و خوانایی کد، برنامه‌های نوشته شده با جنگو تمیز و دارای ساختار مناسبی هستند. این امر به توسعه‌دهندگان کمک می‌کند تا ایده‌های خود را به واقعیت تبدیل کرده و الزامات را سریع‌تر برآورده کنند.

برای شروع، باید بر زبان پایتون مسلط باشید. بنابراین اگر با این زبان آشنایی ندارید، ابتدا آموزش پایتون را شروع کنید و سپس به سراغ جنگو بروید در غیر این صورت یادگیری جنگو فایده چندانی برایتان نخواهد داشت. اما ممکن است این سوال برایتان به وجود بیاید که آیا کار با جنگو نیازمند آشنایی با پایتون به صورت حرفه‌ای ست؟ پاسخ منفی است! کافی‌ست با مفاهیم پایه‌ی Python، از جمله متغیرها، انواع داده، کلاس‌ها و توابع، کنترل جریان و کنترل خطا آشنا باشید و بتوانید از pip برای نصب بسته‌ها و اجرای دستورات ابتدایی از خط فرمان استفاده کنید.



نویسنده: ادمین