ما هو مطور الواجهة الخلفية Back-End Developer ؟

ما هو مطور الواجهة الخلفية Back-End Developer ؟


ما هو مطور الواجهة الخلفية، يمكن تقسيم كل موقع ويب قمت بزيارته إلى قسمين: الأشياء التي تراها – بما في ذلك الصفحات والمحتوى – وكل شيء آخر لا تراه.

ما هو مطور الواجهة الخلفية

في عالم التكنولوجيا ، نسمي هذا “front end” و “back end” على التوالي. يُطلق على الأشخاص الذين يعملون على هذه المكونات اسم “front-end developers” و “back-end developers”. يأتي إنشاء الواجهة الأمامية والخلفية لموقع ويب مع تحدياته الخاصة ، ولكن لا يمكن لأحدهما أن يوجد بدون الآخر.

ما هو مطور الواجهة الخلفية، إذا كنت مهتمًا أكثر بالجزء غير المرئي من مواقع الويب – الجزء الذي يحافظ على تشغيل كل شيء – فقد تفكر في ممارسة مهنة في التطوير الخلفي. ولم يكن هناك وقت أفضل للقيام بذلك: وفقًا لمكتب الولايات المتحدة لإحصاءات العمل ، من المتوقع أن يزداد دور “مطور الويب” بنسبة 13٪ من عام 2020 إلى عام 2030 ، أي أعلى بكثير من متوسط ​​8٪ لجميع المهن، تابع القراءة للتعرف إلى ما هو مطور الواجهة الخلفية.

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

ما هو مطور الواجهة الخلفية Back-End Developer ؟

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

مطورو الواجهة الخلفية مطلوبون بشدة ، ويمكن أن يتوقعوا جني حوالي 95000 دولار في المتوسط ​​لكل موقع في الواقع

ما هو مطور الواجهة الخلفية back-end development ؟؟

إذن ، كيف تبدو النهاية الخلفية في الواقع؟ لا شيء ، حقًا ، على الأقل ليس للمستخدم. ومع ذلك ، فإن النهاية الخلفية تتأرجح دائمًا خلف الكواليس لتعزيز تجربة الواجهة الأمامية للزوار.

خذ هذه المدونة على سبيل المثال. ما تشاهده على شاشتك هو الواجهة الأمامية ، واجهة موقع الويب. كل ما تراه هنا ، بما في ذلك النصوص والصور والأزرار ، يشكل الواجهة الأمامية لمدونة safapress.

ما هو دور مطور الواجهة الخلفية

ولكن ، كيف وصلت هذه الواجهة الأمامية إلى جهاز الكمبيوتر الخاص بك في المقام الأول؟ يتم تخزين ملفات النص والصور لهذا المنشور في قاعدة بيانات على خادم ويب safapress ، وكذلك الملفات التي تحدد كيفية ظهور الألوان والخطوط والحجم. عندما طلبت (أو ، على وجه الدقة ، متصفحك) عرض صفحة الويب هذه ، أخذ الخادم الطلب ، وجمع جميع الملفات الضرورية من قاعدة بياناته ، وجمعها في ملفات صفحة الويب ، ثم أرسل هذه الملفات إلى متصفحك. هذه هي النهاية الخلفية في العمل.

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

ما هو مطور الواجهة الخلفية،  هذا هو جوهر التطوير الخلفي: إدخال بيانات المستخدم من الواجهة الأمامية للتطبيق ، وتخزينها في قاعدة بيانات ، وتعديل محتويات قاعدة البيانات عند الحاجة ، وتنفيذ مجموعة متنوعة من العمليات على هذه البيانات المخزنة ، وإرسال البيانات مرة أخرى إلى الواجهة الأمامية. يبتكر مطورو البرامج الخلفية الحلول ويكتبون الكود لتحقيق كل هذا. يا للعجب عمل عظيم، حول ما هو مطور الواجهة الخلفية.

يُطلق على مطور الواجهة الخلفية أيضًا اسم “development server-side” لأنه يتم تنفيذ التعليمات البرمجية الخاصة به على خوادم الويب ، وأجهزة الكمبيوتر القوية المصممة لتخزين ملفات موقع الويب وتشغيل التعليمات البرمجية الخاصة به. هذا على عكس التعليمات البرمجية “من جانب العميل” ، والتي تعمل في متصفحات الويب الخاصة بالمستخدمين ويتم كتابتها في الغالب بواسطة مطوري الواجهة الأمامية.

ماذا يفعل مطور الواجهة الخلفية

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

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

تعاون مطور الواجهة الخلفية

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

الواجهة الأمامية مقابل مطور الواجهة الخلفية Front-end vs. Back-end Developer

لغات اخرى

بالطبع ، هناك العديد من لغات البرمجة الأخرى التي قد يفضلها مطورو الواجهة الخلفية. تشمل الخيارات الشائعة الأخرى لغة Ruby ، ​​وهي لغة عالية المستوى لبناء تطبيقات الويب والجوال بسرعة ، و C ، وهي لغة منخفضة المستوى (بالإضافة إلى اللغة الأكثر شيوعًا حاليًا) ، و .NET ، وهو إطار عمل تم تطويره بواسطة Microsoft لبناء مواقع الويب و تطبيقات الويب.

بالإضافة إلى ذلك ، قد يستخدم مطور الواجهة الخلفية لغات البرمجة خصيصًا لإدارة قواعد البيانات ، مثل SQL (التي سنناقشها لاحقًا في مقال ما هو مطور الواجهةالخلفية).

لغات الواجهة الأمامية

انتظر لحظة ، ألا نتحدث عن التطوير الخلفي؟ لماذا نضيع الوقت في الحديث عن كود الواجهة الأمامية أيضًا؟

في حين أنه من الصحيح أن مطوري الواجهة الخلفية يقضون معظم وقتهم في العمل مع لغات البرمجة من جانب الخادم ، فإن فهم أساسيات لغات الواجهة الأمامية سيثبت قيمته عند العمل في مشاريع قائمة على الويب. هذه اللغات الأمامية الثلاث هي HTML و CSS و JavaScript .

HTML (لغة ترميز النص التشعبي) (HyperText Markup Language) هي اللغة الأكثر أهمية في تطوير الواجهة الأمامية ، وربما سمعت عنها على الأقل. تحدد HTML المحتوى (النص والروابط والوسائط) وهيكل صفحات الويب. تم إنشاء جميع صفحات الويب تقريبًا باستخدام HTML ، وتنتهي ملفاتها بالملحق .html.

تضيف CSS (أوراق الأنماط المتتالية) (Cascading Style Sheets) نمطًا إلى HTML ، مثل الخطوط والألوان. بمعنى آخر ، يجعل صفحة الويب تبدو جميلة. بدون CSS ، سيكون الإنترنت مكانًا مملًا جدًا – ستكون كل صفحة ببساطة عبارة عن جدران من النصوص والصور غير المنظمة. تساعد CSS أيضًا في جعل محتوى الصفحة مستجيبًا لمختلف الأجهزة وأحجام الشاشات.

يعالج JavaScript (غالبًا ما يتم اختصاره إلى JS) وظائف صفحة الويب بما يتجاوز الأسلوب والمحتوى الأساسيين. على الرغم من أن CSS و HTML ليست لغات برمجة من الناحية الفنية ، فإن JavaScript كذلك ، وهذا يفتح إمكانيات هائلة. يستخدمه المطورون للتحكم في الرسوم المتحركة ، وتحديث محتوى الصفحة ديناميكيًا ، وتنفيذ البرامج النصية بشكل عام على صفحات الويب (دون الحاجة إلى الرجوع إلى مطور الواجهة الخلفية).

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

إدارة قاعدة البيانات

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

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

SQL (لغة الاستعلام الهيكلية ، وغالبًا ما تُلفظ مثل “sequel”) هي لغة للاستعلام عن قواعد البيانات المرتبطة وتعديلها وإدارتها. يستخدم MySQL ، وهو نظام لإدارة قواعد البيانات مبني على SQL ، على نطاق واسع في تطبيقات الويب ويجب أن يكون في حزام الأدوات الخاص بك. تسمى قواعد البيانات التي تستخدم SQL قواعد بيانات SQL.

على النقيض من ذلك ، لا تخزن قواعد البيانات غير المرتبطة (وتسمى أيضًا قواعد بيانات NoSQL) نقاط البيانات بناءً على علاقاتها (على الرغم من إمكانية ربط البيانات). بدلاً من الجداول ، تقوم قواعد البيانات غير المرتبطة ببناء بياناتها باستخدام لغة التوصيف الموسعة (XML) و / أو JavaScript Object Notation (JSON). يمكن أن تكون معرفة برامج قواعد بيانات NoSQL مثل Redis و MongoDB مفيدة في الواجهة الخلفية بالإضافة إلى SQL.

البرامج من جانب الخادم وما هو مطور الواجهة الخلفية

يكتب مطورو الواجهة الخلفية برامج لتشغيلها على الخوادم. يجب أن تكون على دراية ببرامج الخادم الشائعة مثل Apache و Nginx و Microsoft IIS ونظام التشغيل Linux. ستحتاج أيضًا إلى فهم كيفية تلقي خوادم الويب لطلبات صفحات الويب ومعالجتها ، وكيفية تخزين البيانات ، وعلى الأقل أساسيات كيفية الحفاظ على أداء عالٍ وآمن.

API أو واجهة برمجة التطبيقات

واجهة برمجة التطبيقات (API) هي مجموعة من التعريفات والبروتوكولات التي تسمح لتطبيقين بالتفاعل ومشاركة البيانات مع بعضهما البعض. تعمل واجهة برمجة التطبيقات (API) عن طريق ملئ الطلبات من التطبيقات الخارجية ، ثم الاستجابة من خلال تلبية الطلب. قد يكون هذا الطلب لاسترداد أو تعديل بعض مجموعة البيانات في قاعدة بيانات API.

مطور الواجهة الخلفية: رسم تخطيطي لواجهة برمجة تطبيقات تتفاعل مع مستعرض ويب عبر الإنترنت

 

اليوم ، تعد واجهات برمجة التطبيقات (API) هي التقنية الكامنة وراء عمليات التكامل المستندة إلى الويب. على غرار الطريقة التي تتفاعل بها مع برنامج من خلال واجهة المستخدم الخاصة به ، يمكن أن يتفاعل برنامج واحد مع برنامج آخر من خلال واجهة برمجة التطبيق. في أي وقت ترى تقنية أحد تطبيقات الويب مستخدمة في تطبيق آخر ، فإن واجهات برمجة التطبيقات (API) تحقق ذلك.

تتيح تطبيقات مثل Facebook أو YouTube أو Google أو Spotify إمكانية الوصول إلى الكثير من بياناتها من خلال واجهات برمجة التطبيقات العامة الخاصة بها .

هناك العديد من أنواع واجهات برمجة التطبيقات المستخدمة اليوم ، وأكثرها شيوعًا هي REST APIs . للعمل في تطوير الويب ، يجب أن تكون مجهزًا بفهم لواجهات برمجة تطبيقات REST (وربما SOAP APIs أيضًا). هذه التقنية لا تربط فقط التطبيقات المملوكة بشكل منفصل ولكن أيضًا بالخدمات الداخلية الخلفية، من خلال مطور الواجهة الخلفية.

Data Structures and Algorithms H أو هياكل البيانات والخوارزميات

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

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

بشكل عام ، الخوارزمية هي عملية محددة لحل مشكلة ما. يعرف مطورو الواجهة الخلفية الخوارزميات الأساسية لبرامج الكمبيوتر: سيتم استخدام خوارزميات الفرز وخوارزميات البحث وتحليل السلسلة والمطابقة والتجزئة والخوارزميات التكرارية في مرحلة ما.

مهارات أخرى مهمة عن ما هو مطور الواجهة الخلفية

بالإضافة إلى المهارات الأساسية المذكورة أعلاه ، هناك الكثير لاستكشافه في مجال حول ما هو مطور الواجهة الخلفية، فيما يلي بعض المهارات الإضافية التي ستخدمك بشكل جيد كمبرمج خلفي:

  • تجربة مع نظام التحكم في الإصدار – على الأرجح Git ، بالإضافة إلى الإلمام بـ GitHub
  • المعرفة أو الخبرة في إدارة الخادم
  • مهارات الاتصال والقدرة على شرح الموضوعات الفنية المعقدة لغير الخبراء
  • مهارات إدارة الوقت ، حيث من المحتمل أن توازن بين عدة مسؤوليات في وقت واحد
  • فهم الحوسبة السحابية والاستضافة
  • فهم أفضل ممارسات الوصول إلى الويب
  • فهم أفضل ممارسات الأمن السيبراني

ما هو مطور الواجهة الخلفية Back-End Developer الأشخاص الذين يقفون وراء الموقع

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

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

Mustafa AbdoAuthor posts

Avatar for Mustafa Abdo

أحب الكتابة عن التكنولوجيا والتجارة الإلكترونية والتسويق عبر الإنترنت. كنت أعمل كمسوق إنترنت بدوام كامل ، وأكسب المال بينما أعيش حياتي بشروطي الخاصة ، قمت أيضاً بتدريب الأشخاص الآخرين لتحقيق النجاح والربح من الإنترنت.

لا تعليق

اترك تعليقاً

لن يتم نشر عنوان بريدك الإلكتروني.