جانغو (إطار عمل ويب)جانغو
جانغو (بالإنجليزية: Django؛ تنطق JANG-goh[8]) هو منصة برمجية لتطبيقات الإنترنت حر ومفتوح المصدر مكتوب بلغة البرمجة بايثون، والذي يتبع أسلوب تطوير نمط-قالب-عرض (بالإنجليزية: MVT: Model-Template-Views).[9] طُوّر أصلًا لإدارة مواقع إخبارية تديرها «شركة العالم» (بالإنجليزية: The World Company)[10] وأصدر للعموم في يوليو 2005 تحت رخصة بي إس دي.[11] في يونيو 2008 أعلن عن إنشاء مؤسسة برنامج جانغو التي ستتولى تطوير جانغو في المستقبل.[12] هدف جانغو الأساسي تسهيل إنشاء مواقع الوب المعقدة المعتمدة على قواعد البيانات. تركز المنصة على قابلية إعادة الاستخدام وقابلية التوصيل (Pluggability) للعناصر، زتكويد أقل، وخفض الاقتران، وتطوير سريع، ومبدأ لا تكرر نفسك.[13] تستعمل البايثون في كل المنصة حتى بالنسبة للإعدادات، الملفات وأنماط البيانات. وتوفر كذلك خيار استعمال واجهة إدارة قواعد البيانات (إنشاء - قراءة - تحديث - حذف)[14] بعض المواقع المعروفة التي تستخدم جانغو بما فيها بي بي إس،[15] إنستغرام،[16] مؤسسة موزيلا،[17] واشنطن تايمز،[18] ديسكاس،[19] بيت باكيت ,[20] Nextdoor.[21] وبنترست[22]، الذي انتقل إلى استخدام فلاسك. تاريخأنشأت جانغو في خريف 2003، حين بدأ عاملان (أدريان هولوفاتي وسيمون ويلسون) في جريدة لورانس جورنال-وورلد باستخدام لغة بايثون في بناء تطبيقات. تم توظيف جاكوب كابلان-موس في تطوير جانغو قبيل انتهاء فترة تدريب سيمون ويلسون.[23] تم نشرها تحت رخصة بي إس دي في يوليو 2005.[11] تم تسمية المنصة تيمنا بالجيتاريست الفرنسي جانغو راينهارت.[24] في يونيو 2008 تم الإعلان عن إنشاء منظمة جانغو للبرمجيات (DSF: Django Software Foundation) والتي تعنى بتطوير والحفاظ على المنصة في المستقبل.[12] المميزاتالقطع (العناصر)بالرغم من امتلاك المنصة نظام تسمية، مثل تسمية الكائنات التي تولد إستجابات اتش تي تي بي(عروض - Views)،[9] فإن قلب منصة جانغو يمكن أن يعتبر كمعمارية MVC. تعمل جانغو بوجود ثلاثة عناصر أساسية:
كذلك يحتوي لب المنصة على أدوات أخرى:
التطبيقات المحزمةتوزيعة جانغو الأساسية تحزم أيضا مجموعة من التطبيقات في رزمة (المساهمات - Contrib) من ضمنها:
قابلية التمدديسمح نظام التهيئة في جانغو بتوصيل كود طرف ثالث في مشاريع جانغو الاعتيادية، شرط أن يتبع مفاهيم قابلية إعادة الاستخدام.[27] توجد أكثر من 3800 حزمة[28] ممتوفرة لتوسعة السلوك الأصلي للمنصة، توفير حلول لقضايا لم تتعامل معها الأدوات الأساسية: نظام التسجيلات، البحث، تقديم واسهلاك الواجهات برمجية، أنظمة إدارة المحتوى، وغيرها. التطابق مع الخوادميمكن لجانغو العمل بالإشتراك مع آباتشي، انجينكس باستخدام ويزغي (واجهة بوابة خادم ويب، جي يونيكورن (Gunicorn) أو شيروكي باستعمال فلوب - flup (وحدة مكتبية من بايثون)[29] مقارنة جانغو بمنصات تطوير ويب أخرىيتم مقارنة جانغو في الأغلب مع العديد من لغات ومنصات تطوير الويب مثل بي اتش بي، فلاسك، نود.جي إس، وغيرها. تاريخ النسخيقوم فرق جانغو من فترة إلى فترة بتعيين إصدارات معينة كـ «دعم طويل الأمد».[30] ستحصل هذه الإصدارات على إصلاحات أمنية وبيانية مضمونة لمدة معينة من الزمن، في الغالب ثلاث سنوات، بغض النظر عن سرعة الإصدارات بعدها. المجتمعيوجد مؤتمر نصف سنوي لمطوري جانغو ومستخدميه يدعى «جانغوكون-DjangoCon» والذي تم إقامته منذ سبتمبر 2008. يتم اقامته سنويا في أوروبا في شهر ماي أو جوان، بالمقابل يقام آخر في الولايات المتحدة في أوت أو سبتمبر في مدن عديدة. نقل إلى لغات برمجة أخرىقام مبرمجون بنقل محرك جانغو للقوالب إلى عدة لغات برمجية أخرى، وبالتالي توفير دعم متعدد المنصات لا بأس به. بعضها يعتبر نقلا مباشرا وأخرى بالرغم من تأثرها بجانغو ومفاهيمها، إلا أنها أخذت الحرية في الخروج عن تصميم جانغو:
منصات إدارة محتوى مبنية على جانغومنصة جانجو قادرة على بناء أنظمة إدارة محتوى كاملة، على كل حال يوجد مشاريع أنظمة إدارة محتوى مخصصة مبنية وموسعة لجانغو. هذه بعض أشهرها:
أنظر أيضامراجع
وصلات خارجية
|