🔶 بخش اول
🔻 تاریخچه جنگو
جنگو (Django) یک فریمورک قدرتمند و متنباز است که به زبان پایتون برای توسعه وب نوشته شده است و به توسعهدهندگان کمک میکند سریعتر، بهتر و امنتر برنامههای تحت وب را ایجاد کنند. این فریمورک با معماری MTV (Model-Template-View)، امکانات پیشرفتهای مثل مدیریت خودکار دیتابیس، احراز هویت کاربر، و ابزارهای امنیتی قدرتمند ارائه میدهد.
جنگو اولین بار در سال ۲۰۰۳ توسط گروهی از توسعهدهندگان در یک شرکت خبری به نام Lawrence Journal-World در کانزاس آمریکا توسعه داده شد. هدف اولیه از ساخت آن، تسریع فرآیند توسعه وبسایتهای خبری بود که نیازمند بهروزرسانیهای مکرر و عملکرد بالا بودند.
نام جنگو از جنگو راینهارت (Django Reinhardt)، نوازنده برجسته گیتار جاز، الهام گرفته شده و هدف از اینکار بخاطر این بوده که توسعهدهندگان این فریمورک میخواستند سرعت و انعطافپذیری این نوازنده را در نام محصول خود منعکس کنند.
همچنین در سال ۲۰۰۵، جنگو بهصورت متنباز منتشر شد و از آن زمان به یکی از محبوبترین فریمورکهای توسعه وب تبدیل شده است. از ابتدا، تیم جنگو بر روی ارائه ابزارهایی برای مدیریت پیچیدگیهای توسعه وب، مانند احراز هویت، مدیریت دیتابیس، و امنیت، تمرکز دارد و امروز جنگو توسط یک جامعه بزرگ از توسعهدهندگان پشتیبانی میشود و در پروژههای متنوعی، از وبسایتهای کوچک تا اپلیکیشنهای پیچیده، استفاده میشود.
🔻 مفهوم فریمورک
فریمورک (Framework) یک بستر یا چارچوب آماده است که ابزارها، کتابخانهها، و قوانین از پیش تعریفشدهای را برای تسهیل (آسان کردن) و تسریع (افزایش سرعت) فرآیند توسعه ارائه میدهد. به عبارت دیگر، فریمورکها به توسعهدهندگان کمک میکنند تا به جای شروع از صفر، از ساختارها و الگوهای از پیش طراحیشده استفاده کنند و بر بخشهای خاص پروژه تمرکز بیشتری داشته باشند.
بر خلاف برنامههایی که در حالت عادی نوشته می شود که احتمالا شامل یک و یا مجموعهای از فایلهای پایتونی است و برنامهنویس بسته به نیاز پروژه از کتابخانه های مختلف استفاده میکند، در فریمورک مدیریت نصب و استفاده لایبریها به وسیله فریمورک اتفاق میفتد.
هنگام استفاده از فریمورک برنامه نویس موظف است از ساختار فریمورک پیروی کند و محتوای مربوط به پروژه را بر اساس قوانین از قبل تعریف شده قرار دهد. برای مثال، جنگو، که یک فریمورک برای توسعه وب است، هنگام استفاده یک ساختار از قبل تعیین شده ایجاد میکند که شامل فایلها و دایرکتوریها است و کدهای مربوط به views و urls و configurations پروژه در فایلهای مشخص قرار میگیرد. این ساختار باعث می شود که درصد خوانایی کد افزایش پیدا کند و پروژه به بخشهای کوچکتری تقسیم شود.
از ویژگی های کلیدی فریمورک می توان به ساختاردهی پروژه، ابزارهای آماده، افزایش بهرهوری، امنیت اشاره کرد.
🔻 مفهوم ORM
مدیریت دیتابیس در جنگو به وسیله ORM اتفاق میفتد، ORM یا Object-Relational Mapping یک تکنیک در برنامهنویسی است که ارتباط بین اشیاء (Objects) در برنامه و جداول پایگاه داده را فراهم میکند در واقع orm پلی بین پارادایم برنامه نویسی OOP و پایگاه داده است. به زبان ساده، ORM به توسعهدهندگان اجازه میدهد بدون نیاز به نوشتن مستقیم کدهای SQL، با پایگاه داده کار کنند.
در برنامهنویسی شیگرا، دادهها معمولاً به صورت اشیاء ذخیره و مدیریت میشوند، در حالی که database دادهها را به صورت جدول ذخیره میکنند. ORM این دو دنیا را به هم متصل میکند و امکان تعامل بین آنها را سادهتر می کند.
استفاده از ORM سبب افزایش روند توسعه، افزایش امنیت و کاهش هزینه می شود.
🌐 منابع :
🔗 ORM : Open
🔗 Django : Open
🔖 #Python, #پایتون, #Django, #جنگو, #orm, #فریمورک
👤 ȺʍìɾⱮօհąʍʍąժ
💎 Channel: @DevelopixPython