آموزش جنگو (جلسه اول)
موسسه پایا پروژه به عنوان متصدی انجام پروژه های برنامه نویسی پایتون و جنگو وظیفه ی خود می داند که در راستای آموزش جنگو گام های موثری را بردارد. با توجه به اینکه یک دوره آموزشی جنگو مستلزم تمرین و تلاش بسیار است. اما این موسسه تلاش می کند سهم کوچکی در جهت یادگیری شما داشته باشد.
فریم ورک جنگو چیست؟

جنگو فریم ورک پایتون است که برای ساختن وبسایت مناسب است و همچنین فریم ورک جنگو رست فول ایپیآی (API) برای ساختن ایپیآیها استفاده میشود .
جنگو از ساختار مدل ویو تمپلیت استفاده میکند، که کار مدل این است که فیلدهایی که مینوسیم را با دیتا بیس ارتباط میدهد. و کار مای گریشن را عجیب راحتتر میکند. و کار ویو این است که چیزهایی که میخواهیم نمایش بدهیم یا بگیریم را از مدل میگیرد و در تمپلیت نتیجه را نمایش میدهد .
جنگو در ویوهای خود میتواند از ساختار کلاس بیس استفاده کند و همچنین پرمیشنهایی که دارد میتواند امنیت را به طور عجیبی بالا ببرد و جلوی هک و خرابکاریهای خواسته و ناخواسته کاربر را بگیرد. کدهای جنگو به صورت open source در اختیار برنامهنویسان و توسعهدهندگان وب قرار گرفته است .
جنگو چون با کدهای پایتون کار میکند، میتواند کدهای تنظیمات خود را از فایلهای دیگر بخواند .پایتون چون منعطف است و کتابخانههای زیادی دارد، میتواند دست ما را در ویو نوشتن باز بگذارد؛ تا هر کاری که میخواهیم به صورت حرفهای و راحت با درخواستهای سمت کاربر انجام بدهیم .همچنین میتوانیم از ساختار mvc هم در جنگو استفاده کنیم. و میتوانیم به صورت فانکشنال کد بزنیم و از دکوراتورها برای محدودسازی یا اضافه کردن ویژگی برای ویوهایمان استفاده کنیم.
مزایای جنگو چیست؟
جنگو سرعت قابل قبولی دارد و اگر در سروری مجزا دیپلوی شود، سرعتش بالا میرود و اکثر شرکت ها برنامهنویس پایتون را به سایر برنامهنویسان ترجیح میدهند. چون راحتی و سریعتر بودن جنگو نسبت به سایر فریمورکها بیشتر است و همچنین هزینۀ سرور، کمتر از استخدام چند برنامهنویس است.
کامل بودن جنگو
جنگو در ایران، بازار کار بدی نسبت به سایر کشورها دارد. اما درآمدش این عیب را جبران میکند. ساختار ORM در جنگو به ما کمک میکند تا کوئریهای که به دیتا بیس میزنیم، راحت تر و سریعتر باشند.
جنگو با توجه به ساختاری که از آن پشتیبانی میکند، میتواند برای توسعه مناسب تر باشد و توسعه دهندگان راحتتر با آن اخت میگیریند.
امن بودن
جنگو در بحث امنیت، پیشتاز است. زیرا ایپیآیهایی که جنگو مینویسد اول از فیلتری به نام سریالایز رد میشود و در طی این مرحله امنیت را بیشتر و دسترسی را برای هکر ها محدودتر میکند.
همچنین جنگو میتواند شکل URL را برای بعضی از کابرها تغییر دهد و حتی به صورت شانسی آن را استخراج کند. که این یک بحث فوقالعاده عجیب در امنیت است و همچنین جنگو کلاس بیس های پیشفرض در خود دارد که برای کار مد نظر ما ساخته شده است و میتوانیم حتی به دسترسیهایی که پیش فرض وجود دارد هم، آپشن اضافه کنیم و دسترسی های دلخواه خودمان را به راحتی بنویسیم.
همچنین جنگو در ارسال فرمها از CSRF استفاده میکند که حتی اگر کاربر هک شود، CSRF جلوی آن را میگیرد. چون هر بار به صورت رندم برای هر کاربر تولید میشود و مختص آن کاربر است.
قابلیت حمل و توسعه در بسترهای مختلف
جنگو طبیعتا میتواند روی محیط های قدرتمندی مثل لینوکس و سیستم عامل هایی مثل ویندوز و مک اجرا شود.
پر کاربرد بودن
جنگو ایپیآیهایی که میفرستد، طبیعتا از JSON هم پشتیبانی میکند و همچنین در تمپلیتهای خود از HTML و XML پشتیبانی میکند و مثل خود پایتون، فهم راحت با ساختاری پیچیده و بی انتها دارد.
کاربرد جنگو چیست؟
جنگو مرگ برنامهنویس نیست. چون آن قدر راه نوشتن هر هدفی، گسترده است که توسعه دهنده کدهای برنامه را تکرار نمیکند و فقط کدر نیست و برنامهنویس است. جنگو روز به روز ساختارش را بهتر و پکیج های خود را زیادتر و امنیت خود را بیشتر میکند. همچنین جنگو برای پروژههای بزرگ بسیار مناسب است؛ ولی آنجایی که ASYNC بیشتر است، مناسب نیست. اما اگر ما با ذهن هوشمندانهای به آن ساختار بدهیم، میتوانیم از این عیب چشمپوشی کنیم. اپلیکیشن هایی مثل: اینستاگرام، یودمی، یوتیوب و… از جنگو برای توسعه استفاده کردهاند و با آن نوشته شدهاند.نداند.

جمع بندی
در این مقاله، جنگو و کاربردهای آن را بررسی کردیم. اگر میخواهید وارد دنیای طراحی وب و برنامههای کاربردی شوید، جنگو میتواند یک گزینه یادگیری عالی باشد. یادگیری پایتون میتواند به شما قدرت استفاده از جنگو را بدهد و بازار کار جدیدی برای شما ایجاد کند. جنگو همه چیز را مستقیماً به جلو میبرد و به شما ثابت میکند که چرا نباید به سراغ پایه دیگری بروید.

