Front end Vs Back End vs Full Stack


في عالم تطوير تطبيقات الويب و تطبيقات الهاتف تنقسم عملية التطوير الى قسمان:  تطوير الواجهة الامامية و الخلفية. و يجمعنا تحت مسمى Fullstack.

ال frontend هو الجزء الذي  يراه المستخدمون, اما ال backend فهو الجزء الموجود على الخادم و المسؤول على التعامل مع المنطق الخاص بالنظام و التواصل مع قواعد البيانات و غيرها من المسؤوليات. في النهاية يحتاج الطرفان الى بعضهما للحصول على نظام كامل.

من هو مطور الفرونت اند ؟ ( الواجهة الامامية )

دعنا نضع الأمر على هذا النحو: تخيل أن هناك عرضًا مسرحيًا,  مطور الباكند هو الطاقم الذي يتأكد من الدعائم في مكانها ، والمشهد جاهز والممثلون جاهزون للذهاب.

مما يعني أن الواجهة الأمامية هي الممثلين على خشبة المسرح ، ويقدمون أفضل أداء لهم لضمان أن يغادر الجمهور سعداء . بعبارة أخرى ، تركز الواجهة الأمامية على كيفية تجربة المستخدم عند الذهاب إلى موقع الويب أو حتى كتطبيق ،  بحيث يجب أن تكون الإجراءات جاهزة و ايضا عند النقر و تكون صفحة الخلفية مثالية وسهلة الاستخدام للمستخدم. هنا فيما يلي بعض مسؤوليات مطور الويب الأمامي:-

  • تطوير ميزات ووظائف التطبيق التي تواجه المستخدم
  • قم بتحسين UI / UX عن طريق اختبار التصاميم من أجل التطبيق العملي
  • تحسين سرعة التطبيق وقابلية توسيعه
  • جمع مدخلات المستخدم وأخذها في الاعتبار عند إجراء التغييرات
  • الحفاظ على هيكل وتصميم التطبيق بناءً على ملاحظات المستخدم
  • التأكد من أن التطبيق يعمل بشكل جيد عبر الأنظمة الأساسية (سطح المكتب ، الهاتف المحمول ، الجهاز اللوحي ، إلخ)
  • إنشاء كود قابل لإعادة الاستخدام
  • إظهار تناسق العلامة التجارية في تصميم التطبيق
  • تصميم ميزات الهاتف المحمول للهواتف الذكية
  • مساعدة مطوري الواجهة الخلفية والمكدس الكامل في استكشاف الأخطاء وإصلاحها

من هو مطور الباك اند؟

يعالج مطور الباكند جانب الخادم من تطبيق الويب ، بالإضافة إلى دمج عمل مطوري الواجهة الأمامية. يقتصر معظم عمل مطورين الباكند على الوظائف و الاشياء خلف الكواليس، بالإضافة إلى كتابة كود API الذي يستخدمه مطورو الواجهة الأمامية عند جعل التطبيق يعمل للاستخدام عبر الأنظمة الأساسية.

بشكل أساسي ، يترجم مطورو الباكند الخلفية إلى تطبيق الويب تفاعلات المستخدم التي يسهلها مطورو الواجهة الأمامية ، بالإضافة إلى تخزين البيانات والمعلومات التي تشكل الواجهة الخلفية وصيانتها. تتضمن بعض مسؤوليات المطور الخلفي ما يلي:

  • إضافة منطق جانب الخادم إلى عناصر واجهة المستخدم التي أنشأها مطورو الواجهة الأمامية
  • إنشاء التعليمات البرمجية والمكتبات لتوسيع نطاق تطبيق الويب
  • تحسين سرعة التطبيق وإمكانات نموه
  • الحفاظ على البيانات التي تم جمعها بأمان مع التدابير الأمنية المطبقة
  • تنفيذ حلول تخزين البيانات وفي بعض الأحيان تصميم حلول التخزين هذه
  • تصحيح أي مشكلات محتملة تظهر مع التطبيق
  • استخدام أحدث التقنيات لاستبدال أو تحديث الأنظمة القديمة

من هو مطور Full Stack ؟

مطور Full Stack هو شخص يعمل مع الباكند - أو جانب الخادم - للتطبيق بالإضافة إلى الواجهة الأمامية أو جانب العميل. يجب أن يتمتع مطورو Full Stack ببعض المهارات في مجموعة متنوعة من مجالات الترميز ، من قواعد البيانات إلى التصميم الجرافيكي وإدارة UI / UX من أجل القيام بعملهم بشكل جيد. إنها نوع من التأرجح ، وعلى استعداد للمساعدة أينما دعت الحاجة في هذه العملية.  تتضمن بعض مسؤوليات مطور Full Stack ما يلي:

  • المساعدة في تصميم وتطوير البرمجيات
  • برنامج الاختبار وتصحيح الأخطاء لإبقائه في الوضع الأمثل
  • كتابة كود نظيف للواجهة الأمامية والخلفية للبرنامج
  • تصميم تفاعلات المستخدم على تطبيق الويب نفسه
  • إنشاء خوادم وقواعد بيانات للجهة الخلفية للبرنامج
  • ضمان التوافق والتحسين عبر الأنظمة الأساسية
  • اختبار وصيانة التصميم سريع الاستجابة للتطبيقات
  • العمل مع مصممي الجرافيك لتصميم ميزات جديدة
  • تطوير واجهات برمجة التطبيقات وخدمات RESTful
  • مواكبة التطورات التكنولوجية لتحسين برامجهم

متى تكون هناك حاجة إلى مطور FULL STACK؟

يعتمد ذلك على حجم البرنامج وقابليته للتوسع. على سبيل المثال ، مجموعة من مطوري ألعاب الكترونية  تتكون من عدد قليل فقط من الأشخاص الذين يقومون بإنشاء محاكي صغير يمكن أن يكون لديهم مطور خلفي واحد ومطور واجهة أمامية واحد وقد يكون هذا كل ما يحتاجون إليه للتطوير. إذا كانوا أصغر ، فقد يكون لديهم مطور Full Stack واحد يتعامل مع التطبيق بأكمله. من ناحية أخرى ، سيتطلب تطبيق الويب الكبير الذي يتمتع بإمكانيات قوية للتوسيع العديد من الأدوات اليدوية - مطورو الواجهة الخلفية والواجهة الأمامية ومطورين المجموعة الكاملة.


ما الفرق ما بين الفرونت اند و الباكاند و Full Stack ؟

عندما يتعلق الأمر بتطوير الويب لأحد التطبيقات ، فهناك مطورو الواجهة الأمامية والخلفية. ومع ذلك ، نظرًا لوجود تداخل في كثير من الأحيان بين الاثنين ، هناك أيضًا مطورو ويب Full Stack - و التي يجمع كليهما - يمكنهم التنقل ذهابًا وإيابًا بين التخصصين. يتمتع جميع مطوري الويب هؤلاء بأدوار مختلفة ومميزة عندما يتعلق الأمر بتطوير التطبيق ، لكن كل منهم يحتاج إلى الآخر ليعمل.