أهم مجال برمجي في عام 2022
يعتبر مجال الويب من اهم المجالات في البرمجة في هذا العصر, وعليه تعتمد الكثير من الأنظمة الأخرى.
مجال الويب عالم ضخم وابسط طريقة يمكن تقسيمها هي أن نقسمها إلى ثلاث أنواع وهي:
- الفرونت اند Frontend.
- الباك اند Backend.
- ديف اوبس Devops.
وكل واحدة منها عالم مختلف تماماً عن الآخر و سوف نعرفها بالتفصيل في هذا المقال.
فرونت اند Frontend
الفرونت اند Frontend ترجمتها الحرفية (الجهة الأمامية) وهي طريقة عرض الواجهات على المتصفح Browser مثل (ظهور الألوان على الشاشة, الأزرار, اشكال رسومية, انيميشن, وحركات).
و من إسمها فرونت اند فهي تظهر للمستخدم ويراها بعينه ولكن هناك من يعمل هخلف الكواليس ولا يراها المستخدم وهي الباك اند Backend.
باك اند Backend
الباك اند Backend ترجمتها الحرفية (الجهة الخلفية) وهي كل ما يحصل خلف الكواليس.
لنأخذ مثال لكي نفهم مبدأ الباك اند Backend اكثر.
لنتخيل المسرح, فهناك من يمثل على المسرح وهناك من يقود الفريق ومن يأمر الممثلين بالخروج و من يضع المكياج أو المسؤول عن الإضاءة ....الخ.
هذين العنصرين يمثلان معظم المواقع ديناميكياً على الانترنت و هناك قسم العمليات وهو القسم المسؤول عن تنظيم المسرح بشكل عام مثل حجز المسرح والتذاكر والامور اللوجستية.
كذلك المواقع بها قسم العمليات وهو القسم المسؤول عن نشر الموقع على الانترنت ويعرف بإسم Devops.
ديف اوبس Devops
هي اختصار للمصطلح الإنجليزي Developement Operation أي التطوير والعمليات (النشر والصيانة).
تعرفنا في الفقرة السابقة على الفرونت اند والباك اند, والفرونت اند يمكن أن يكون واجهة تطبيق أيفون او موقع او تطبيق اندرويد أو أي واجهة مستقلة.
أما الباك اند فهو مركز من البيانات يتصل به نظام فرونت اند واحد او اكثر و يمكن لموقع الويب ان يكون له باك اند واحد لكن يكون له ثلاث فرونت اند مختلفة.
ويتم الاتصال بين فرونت اند وباك اند من خلال شيئ يسمى api.
ما هي واجهة برمجة التطبيق api
مصلح api هو اختصار للكلمة application programming interface و ترجمتها الحرفية هي (واجهة برمجة التطبيق).
مثال لفهم ماهو مبدأ عمل api
يمكن أن نشبه كامل العملية بمطعم, لنفكر قليلاً لفهم فكرة api أكثر.
المطعم ممكن أن يأخذ الطلبات من خلال طاولات المطعم أو ممكن أن يكون هناك تطبيقات للطلب على الهاتف أو موقع.
اي هناك اكثر من طريقة للاتصال بهذا المطعم والطلب منه, لكن الناس الذين يطلبون من الهاتف هل يحتاجون إلى كراسي؟ بالطبع لا.
هذا يعني أن تصميم الواجهة غير مهم وهنا أي اذا رجعنا الى تشبيهنا أن المطعم هو الباك اند وواجهة المطعم والكراسي هي الفرونت اند.
فإن الناس في هذه الحالة تريد الباك اند أي المعلومات التي به ولا تريد واجهة, وهنا في هذه الحالة تشبيه api بالنادل (الكرصون) المسؤول عن توصيل الطلبات من المطبخ إلى العميل.
سواء كان العميل في المطعم أو في بيته حيث أن هذا النادل هو الوسيط بين المطبخ والعميل و api هو الوسيط بين الباك اند والفرونت اند.
لذلك الـ api يعتبر واجهة مختلفة عن واجهة المطعم لكنه واجهة في الأخير.