ما هو مجال ال back-end وكيف أبدأ فيه
ينقسم مجال تطوير الويب إلى ثلاثة أقسام:
- تطوير الواجهة الأمامية(Front-end)
- تطوير الواجهة الخلفية(Back-end)
- التطوير الشامل/الكامل(Fullstack)
ما هو مجال ال back-end (serve-side):
يعد الـ back-end، أو الجزء الخفي من الموقع، هو الجزء الذي لا يمكن رؤيته بسهولة ولكنه يؤثر على تفاعل المستخدم مع الموقع.
يتمثل دور الـ back-end في استقبال المشروع أو الموقع وبدء العمل عليه بعد انتهاء تكويد الـ Front-end.\
يهتم المبرمجون في الـ Back End بالطريقة التي يعمل بها الموقع وسرعة استجابته للمستخدمين، دون الاهتمام بالألوان والأشكال والحاجات الأخرى.
في حين يعتبر الـ Front-end هو الجزء الذي يمكن رؤيته بسهولة من قبل المستخدم، والذي يقوم برسم الموقع وتحديد شكله وألوانه وسماته، لكنه لا يتفاعل مع المستخدم بشكل مباشر.
بشكل عام، يعد الـ back-end جزءًا حاسمًا من عملية تطوير الموقع، حيث يؤثر بشكل كبير على تفاعل المستخدم مع الموقع وسرعة استجابته له.
بالإضافة إلى ذلك، فإن تحسين الـ back-end يحسن من تصنيف الموقع في نتائج محركات البحث وزيادة وصوله بشكل أفضل. لذلك، من المهم أن تولي اهتمامًا كبيرًا لتطوير الـ back-end في مشروعك أو موقعك على الإنترنت
المختصر المفيد عن ال back-end:
دائما ما تسأل نفسك مرارا و تكرار ما هو الـ back-end ؟ ما هو الـ back-end ؟!
ببساطة صديقي لما حدا يحتاج يعمل موقع يروح للفرونت الأول بحيث يخلص تكويد الموقع الأول وبعدين الباك يستقبل المشروع أو الموقع ويبدأ يشتغل عليه طب ليش ما تم الاكتفاء بتكويد الفرونت بس يعني الشكل يلي بتشوفه؟
ببساطة لأن الفرونت وظيفته إنه يرسم الموقع أو بمعنى أوضح بيظبط الشكل و الألوان و السيمات وأمور آخرى كتير متعلقة بجمالية الموقع, لكن ف النهاية الموقع بيكون عبارة عن شكل بس يعني لو نقربها لمثال عبارة عن صورة فيها عدة خيارات وأزرار لكن لا تستطيع التفاعل مع الموقع أو تسجل دخول أو تنشر منشور أو يكون فيه أي تواصل بينك وبين أي حدا على السيستم , هنا نحتاج لمبرمج باك اند بحيث يخلي الموقع يتفاعل مع المستخدمين في الخلفية من هون جاء اسمه باك اند و أكتر شيء بيهتم فيه هي الطريقة اللي بيشتغل فيها الموقع وسرعة استجابته مع العميل ولا يهتم بالألوان والأشكال وما الى ذلك.
هلق فيك تقرر تفوت المجال ولا لا هيك بظن😉
لغات البرمجة المشهورة في مجال (back-end):
لغة php :
- هذه لغة من اللغات العريقة جدا في مجال الباك اند نشئت أصلًا من قبل راسموس ليردورف Rasmus Lerdorf في عام 1994، وأُصدرت بعد ذلك بعام.
- بعد عدة أعوام ،أعاد اثنان من المبرمجين الجامعيين، وهما زئيف سوراسكي و أندي غوتمانز، كتابة قاعدة النسخة الأصلية، وأطلقا الإصدار الذي سمي حينها بـ “PHP3 ”
- .PHP (بي إتش بي) كانت في الأصل مجموعةً من التطبيقات التي كتبت باستخدام لغة Perl، وهي اليوم تعرف بأنها لغة برمجة نصية من جانب الخادم (server-side).
- أكثر من 80% من مواقع الويب مبنية باستخدام لغة ال PHP بما فيها فيس بوك فهذا جعل لها قوة كبيرة في هذا المجال وبإطارات عمل قوية مثل Laravel و Symfony وتمتاز هذه اللغة بأمانها العالي وصلابتها واستمرارية دعمها بشكل كبير وواسع .
- عندما نتحدّث عن الإنترنت اليوم، فإننا أمام مصطلح من الصعب جدا قياسه، وإحصاء تنوعه، وموارده. لكن PHP لها اليد العليا أمام كل هذا!
- قوية بما يكفي لتكون في قلب أكبر نظام تدوين على الويب (WordPress).
- عميقة بما يكفي لتشغيل أكبر شبكةٍ اجتماعية في العالم (Facebook).
- واسعة ومتشعّبةٌ بما يكفي لتكوين أكبر موسوعة معارف إلكترونية في العالم (Wikipedia).
- بعد عقدين من بدايتها، سجلت شركة PHP نموًا هائلًا ولا تزال قويةً جدًّا إلى يومنا هذا؛ إذ تسيطر على أكثر من 80 ٪ (ثمانين بالمئة) من جميع المواقع على الكرة الأرضية، وهذا يشمل التّخصّصات السّابقة الذّكر، وغيرها الكثير.
Node.JS | Runtime Environment :
- و نود جي إس هي بيئة تشغيل Runtime Environment مفتوحة المصدر، مجانية بشكل كامل ويتم تعديلها وتحسينها باستمرار من قبل مجتمع عالمي من المطورين.
- هي عباره عن اطار عمل بلغة الجافا سكريبت تم تطويره من قبل المبرمج الأمريكي ريان دال والسوبر فايز جوينت وكان اطلاقها عام 2009 وطبعا الفضل يعود للغة الجافا سكريبت اللي احتلت مكان ف كل مجال تقريبا وطبعا من المميزات الشهيرة جدا لل Node.js هو سرعتها الرهيبة وقدرتها علي انها تقدر تشتغل علي اكتر من مهمه ف نفس الوقت.
- تتمثل أهمية استخدامها بما يلي:
- الاستمرارية في تطوير مواقع الويب والخدمات والتطبيقات.
- تقديم كم هائل من الخيارات اللغوية للمستخدم لإفادته في تنفيذ الأوامر.
- تدني التكلفة المادية.
- السرعة المرتفعة جدًا.
- حاجة أقل لبيئة عمل مهيأة بأهم الأنظمة والموارد الأساسية في تطوير الويب.
- سهولة العثور على أدواتها ومواردها عبر الإنترنت.
- تقديم نتائج أكثر كفاءة وفاعلية مما تأتي به لغة PHP في إنشاء مواقع وصفحات الويب.
- إمكانية كتابة رموزها وشفراتها بواسطة محررات النصوص المتوفرة دون الحاجة إلى بيئة تطوير متكاملة إطلاقًا، فيترتب على ذلك توفير المبالغ المادية الطائلة التي تدفع في المجال.
- الملاءمة في التطبيق والاستخدام مع كافةِ أنواع قواعد البيانات الشائعة.
- المجانية في الاستخدام.
- المصدر المفتوح.
- مصدر موثوق به في تطوير مواقع الويب
لغة Python :
- لغة بايثون هي لغة برمجية مفتوحة المصدر، أنشأها المبرمج الهولندي جيدو فان روسم قبل 32 عامًا من اليوم وتحديدًا في فبراير من العام 1991، ومن الطريف أن الاسم بايثون أو python آتى من سلسلة كوميدية بريطانية تسمى “سيرك مونتي بايثون الطائر- Monty Python’s Flying Circus”،
- سبب قوة وشعبية لغة البايثون يكمن في سهولتها واختصارها للأكواد وإمكانية استخدامها في العديد من المجالات مثل الذكاء الاصطناعي وتطبيقات سطح المكتب والهاك وغيرها . ونحن الآن نتحدث عن إحدى أوسع مجالاتها أيضاً وهو تطوير الويب، وكما قلنا يرجع سبب قوتها الأساسي هو سهولتها واختصارها للأسطر البرمجية وإمكانياتها الواسعة .
- يمكن استخدام بايثون بشكل أساسي مع Django لتطوير الويب , لغة رائعة وسهلة للبداية وفي غاية القوة ننصحك أيضاً بتعلمها , ربما نقطة الضعف الوحيدة هي قلة الدعم مقارنة بغيرها من اللغات , ولكن رغم ذلك مجتمع بايثون مجتمع غني وكبير ويتوسع يوماً بعد يوم .
لغة java :
- تستطيع لغة جافا تطوير المواقع او الانظمة وغيرها، لكن يكثر استخدام لغة جافا مع انشاء الأنظمة المعقدة التي تحتاج الى تكامل Integration مع الأنظمة الآخرى أو ما يعرف ببرمجيات/تطبيقات المؤسسات Enterprise Applications
- من اشهر اطر العمل في جافا هو spring (سبرنج) ويمكن استخدام JEE (جى اي اي) بدلا عنه وهو أحد إصدارات جافا للتطبيقات التجارية Enterprise.
- يتم استخدام اكثرمن محرر كود مثل: eclipse و netbeans وintellij.
لغة Ruby :
- وتحظى لغة روبي بشعبية كبيرة في مجال تطوير الويب بشكلٍ خاص، فباستخدام إطار العمل Ruby on Rails يمكن للمطور البدء في بناء هيكلية الموقع وتنفيذ فكرته ورؤية النتائج عبر بضع أوامر
- حيث أحدثَ إطار العمل Rails نقلة نوعية في مفاهيم وتطبيقات الويب، هذه المفاهيم تم تبنيها من قبل أُطر عمل أخرى لتصبح ركيزة لتطبيقات الويب الحديثة، لذا فالعديد من الشركات الناشئة ورواد الاعمال والمستقلين على حدٍ سواء يستخدمونها في بناء مشاريعهم.
- ويوفر إطار العمل RoR( Ruby on Rails) الكثير من الأدوات التي تجعل من تطوير تطبيقات الويب أمرًا منظما ويسيرًا. ويقدم إطار العمل Rails العديد من الحلول التي من شأنها تعزيز العمل المشترك بين المطورين وتقديم الأفكار والأدوات اللازمة لبناء تطبيقات ويب قابلة للتوسع والتطوير في المستقبل.
مراحل تعلم مجال ال Back-end :
توجد الكثير من الخطوات والمراحل التي يجب إتباعها لتعلم ال back-end بشكل صحيح، وإذا إلتزمت بهذه المراحل والتوجيهات وتعلمت المهارات اللازمة بشكل صحيح فإنك ستصبح مطور back-end وستصبح قادر على العمل في هذا المجال، لكن يجب أن تعلم بأن التعلم يحتاج إلى العمل الجاد ويأخد الوقت، ويجب أثناء تعلمك لهذا المجال أو أي مجال أخر أن تعطي الوقت الكافي لجميع المهارات التي يجب إكتسابها لفهمها جيدا، وفي هاته الفقرة سنتعرف على الخطوات الصحيحة لتعلم ال back-end، وهذه الخطوات هي كالتالي :
المرحلة الأولى:
في المرحلة الأولى من مسار تعلمك لهذا المجال، يجب أن تختار لغة برمجية لكي تتعلمها
ومن أشهر اللغات التي يتم إستخدامها في ال back-end نجد لغة PHP، Java، Python وهي لغات قوية تتميز بأداء عالي في العمل
وهي أكثر اللغات إستخداما في تطوير الواجهة الخلفية لمواقع وتطبيقات الويب.
المرحلة الثانية:
بعد أن تختار إحدى هذه اللغات البرمجية وتتعلمها وتفهمها جيدا، يجب أن تحاول بناء مشاريع بسيطة بإستعمال اللغة التي قمت بإختيارها
يجب أن تتعلم كيف تتعامل مع قواعد البيانات بإستخدامها وأن تكون لك القدرة على حفظ البيانات، والتعديل عليها ثم حذفها من قاعدة البيانات بإستعمال اللغة البرمجية.
خلال هاته المرحلة يجب أيضا أن تقرأ عن قواعد البيانات وتعرف كيف تتعامل معها وتفهم تصميمها جيدا، لذلك يجب أن تدرس لغة SQL وأن تعرف كيف تستعملها للتعامل مع قواعد البيانات
ثم أن تدرس MySql، الذي يعتبر نظام لإدارة قواعد البيانات ويعمل بأوامر لغة SQL.
كيف اختار نظام قواعد البيانات التي يجب أن أتعلمها:
مثلا لو انت قررت أن لغة البرمجة التي ستتعلمها لغة PHP أنت المفروض تتعلم معها My SQL ك داتا بيز ومعهم ممكن تاخد Framework مثل Laravel
لارفيل حقيقية من اكثر إطارات العمل انتشارا وكمان مفتوح المصدر وتم تطويره من قبل Taylor otwell في عام 2011 وبتقدم بيئه عمل سهلة وبسيطة ومتكاملة وسلسة جدا ولها مصادر كثيرة جدا
ممكن تتعلمها منه ولا ننسى الأمان العالي وخصوصا في كلمات المرور لأنه لا ياخذ منك كلمة المرور ويسجلها ك نص ف قاعدة البيانات لا بيستخدم خورازمية علشان يقوم بعملية توليد كلمات مرور مشفرة
ولو انت قررت انك تسلك هذا المسار هتاخد مسمي PHP Back End Developer😍
أو أنك تتعلم C# ومعها SQL Server ومعها ال ASP.net هكذا انت المسمى الخاص أصبح ASP.net Developer 😮
أو أنك تتعلم بايثون python ومعها Postgre SQL وطبعا طالما ذكرنا بايثون يبقي نتعلم Framework خاص ببايثون واللي هو Django
ملاحظة: يمكنك استخدام أي نوع من قواعد البيانات التي تفضلها مع الإطار العمل. لكن، يعتبر توافق قاعدة البيانات مع الإطار العمل مفيدًا لأنه يمكن أن يوفر مزايا إضافية وتكامل أسهل في عملية التطوير.
المرحلة الثالثة :
المصادر اللي تقدر تبدأ التعلم منها:
انا هحط لكل فكرة كورس أو اتنين يكونوا جيدين نوعا ما عشان لو ما فهمت من مصدر يكون في بديل ودائما بفضل تبحث عن مصادر تعجبك وتليق بطريقة تعلمك
- PHP basic
في هذه المرحلة هتتعلم فيها مواضيع Array, Function, String والتعامل مع الملفات و Cookies و Sessions وغيرها
وتقدر تتعلمها من قناة Elzero Web School :
موقع w3school :
https://www.w3schools.com/php/
- MySQL:
ال MySQL هي Database Management System يعني ممكن نقول وسيط ما بين ال App و ال Database
ومن خلال ال MySQL نقدر نكتب اللغة SQL وهذه اللغة اللي بكتب فيها الاوامر أو Command Line
تقدر تتعلمها من قناة ال Elzero Web School:
دورة آخرى:
JSON & AJAX : انك تفهم JSON كيف بنستخدمها و كيف بنستخدم AJAX في المشاريع ورح اترك كورسين تقدر تتعلم منهم:
تتعلم Json من هنا:
تتعلم Ajax من هنا :
- API :
وهنا مجرد انك تفهم منيح API لإننا بشكل الكبير هتتعامل فيه بعد ما تتعلم Laravel:
- Laravel Framework:
صراحة مصادر متعددة رح اترك انا روابط وأنصح دائما بالبحث والتوثيق الرسمي الخاص بلارافيل laravel
كورس أحمد إمام:
https://www.youtube.com/playlist?list=PLCm7ZeRfGSP4NNEikwx3wUAskQHB3p-LK
laravel daily قناة(أنصح بها في حال تعلم أساسيات لارافيل) :
https://www.youtube.com/@LaravelDaily
و هكذا نكون وصلنا الى نهاية المقال حاولت وضع أكبر قدر من المعلومات لدخول هذا المجال ووضعت مصادر للدخول الى مجال ال back-end وعلى وجه التحديد (PHP Back End Developer) ارشحه بشدة لأن تعلمه يمكنك ببساطة تعلم أي لغة آخرى أو أي Framework اخر بسهولة.
في النهاية إذا أعجبك الموضع أدعوك لتصفح المزيد من المقالات على موقعنا ByteSyria ولا تنسا مشاركته مع أصدقائك