منصات العمل Frameworks لتطبيقات الويب
الكاتب: عبدالرحمن العتيبة | 2 يونيو 2008
منصات أو أطر العمل لتطبيقات الويب أو ما يطلق عليه Web Application Frameworks هي عبارة عن مكتبات برمجية طورت خصيصا لتسهيل عملية تطوير التطبيقات. الهدف من هذه المنصات هو اختصار العمليات الروتينية المتكررة والتي يتم استخدامها في أغلب تطبيقات الويب مثل الاتصال بقاعدة البيانات، عرض المحتويات، تعديل السجلات، في مجموعة تسهل عملية استخدامها مرات متكررة لاحقا بما يتيح للمطور التركيز على حل المشاكل المتعلقة بتطبيقه ويدع الاهتمام بما يدور خلف الكواليس من مهام روتينية إلى هذه المنصات.
غالبا تعتمد هذه المنصات على نظام يسمى Model-View-Controller اختصارا MVC وهو نظام فصل بين واجهة المستخدم ومنطق العمل، حيث يستطيع المطور تعديل كيفية ظهور واجهة المستخدم كيفما يريد من دون التأثير على كيفية واسلوب طلب المعلومات، والعكس صحيح، ويمكننا أن نرى مثال واضح لتطبيق مثل هذه الأساليب في نظام القوالب Templates في التطبيقات المشهورة Wordpress وMovable Type. ولمن أراد التوسع في هذا النظام عليه قراءة سلسة بناء نظام MVC بسيط.
اختصرت منصات العمل الكثير من المهمات الروتينية والتي تتطلب وقتا وجهدا كبيرين لإنشائهما مرارا وتكرارا، وجعلت المطور يركز فقط على ما يريد عمله في تطبيقه، مثلا هناك نظام في بعض المنصات يسمى Scaffold وهو نظام يهتم بقواعد البيانات، يتيح لك إنشاء، قراءة، تعديل، وحذف السجلات من قواعد البيانات في لحظات بمجرد تعريف قاعدة البيانات المستخدمة، بحيث يقوم المترجم بعملية ربط وإنشاء البرمجة اللازمة لربط جداول القاعدة ببعضها عن طريق التعريف الأول للقاعدة. وعندما ترى شرح عن كيفية برمجة مدونة من الصفر في 15 دقيقة بينما في أحسن الحالات يستغرق التفكير والتخطيط لقاعدة البيانات لوحده أيام.
هناك الكثير من المنصات المتوفرة لأغلب اللغات البرمجية، ولكن غالبا ما ينقدها البعض بأنها تستغرق وقتا طويلا لتعلمها، حيث في بعض الحالات تكون أشبه بلغة جديدة، ولكن عند اتقانها ستوفر عليك الكثير. بعض المنصات يأتي معها الكثير من الزوائد والإضافات التي تهتم بأمور كثيرة تختص وتسهل عملية التطوير كإضافات Caching لحفظ مستندات الويب وعدم طلبها كل مرة من الخادم، Database API يتيح توحيد عمليات الطلب والتعديل على قواعد البيانات بين مختلف إنواع قواعد البيانات بحيث يكون أمر الانتقال من قاعدة بيانات إلى آخر سهلا، URL mapping يتيح إعادة صياغة الروابط إلى روابط صديقة لمحركات البحث، Templates لفصل المحتوى عن التصميم.
بعض منصات العمل المتوفرة لتطبيقات الويب
Client-Side جهة المستخدم / المتصفح
Javascript
CSS
Server-Side جهة الخادم
PHP
Ruby
Python
Java
هذه نظرة سريعة لمنصات العمل على الويب، وهناك الكثير من المواقع المشهورة التي تستخدم مثل هذه المنصات كالموقع الاجتماعي الشهير Twitter والذي يستخدم Ruby on Rails وموقع إضافات Firefox Addons والذي يستخدم CakePHP، هذه قائمة بأهم المنصات الموجودة ولمن أراد القائمة الكاملة فهي موجودة على موقع Wikipedia.