الشروع في العمل مع Fullstack Web Development
في هذه الأيام ، الحديث تطوير مكدس كامل تحظى بشعبية كبيرة في كل من الوكالات الصغيرة والشركات الكبرى مع فريق تقني متخصص. يعمل مهندسو الويب الكاملون على مجموعة كاملة من التقنيات بما في ذلك الواجهة الأمامية ، الخلفية, و إدارة الخادم.
يجادل كثير من الناس بأن المكدس الكامل يؤدي فقط إلى كونه "جاك لجميع المهن ، سيد لا شيء". من وجهة نظر معينة ، قد يكون هذا صحيحًا ، ولكن مجموعة المهارات مهمة فقط بقدر أهمية ما يمكن إنجازه بها. تقدم العديد من devs مكدس كامل القيمة لأنها يمكن أن تأخذ فكرة من الحمل إلى الإطلاق, وفهم تماما كل خطوة من العملية.
إذا كنت تفكر في الذهاب في الطريق مكدس كامل, ثم هذه المادة هي لك. سأشرح المتطلبات العامة لمطور برامج متكامل ، ما يستلزمه الدور ، وكيف يمكن أن تكون مجموعة المهارات مفيدة لأصحاب العمل الحر / المقاولين الذين يرغبون في العمل مباشرة إما للعملاء أو في مشاريعهم الخاصة.
أساسيات المكدس الكامل
لقد حان التطور الكامل للمكدس الحديث شوطًا طويلًا ، حيث تغيرت تكنولوجيا الويب كثيرًا. يجب استخدام متطلبات مكدس كاملة كمبادئ توجيهية للنظر في التالي. بشكل عام ، يمثل "المكدس" التقنيات التي تعمل في انسجام تام لجعل موقع العمل. هذا يعني رمز الواجهة الأمامية ورمز الواجهة الخلفية ونظام قاعدة البيانات ونظام خادم الويب + OS للخادم.
يتمثل المبدأ الأساسي لتطوير المكدس الكامل في فهم جميع جوانب إنشاء موقع ويب. هذا لا يعني معرفة التصميم أو العمل UI / UX ، على الرغم من أن ذلك يمكن أن يحسن كثيرا من قابليتك للجودة وجودة العمل.
- تشمل أساسيات الواجهة الأمامية HTML / CSS وجافا سكريبت, على الأرجح مع الإطار, مثل الزاوي أو الرد.
- بالنسبة للغة الخلفية ، سترغب في اختيار شيء يمكن أن يقترن بنظام قاعدة بيانات. PHP / ماي هو الأكثر شيوعًا وأسهل في التعلم لأنه يشغل العديد من محركات CMS مثل WordPress. أيضا مصباح المكدس هو بلا شك مكدس الويب الأكثر شعبية اليوم.
- قد تكون معرفة الخادم بسيطة أو مفصلة كما تريد. الأساسيات المطلقة ستكون معرفة مثل برنامج الخادم أباتشي إلى جانب قاعدة بيانات مثل الخلية أو كيو.
- قد تذهب أبعد من ذلك لتشمل المعرفة بتثبيت خوادم البريد ، أو أدوات الأداء ، مثل memcached أو Varnish.
يجب أن يطور مطور المكدس بالكامل في المجالات الثلاثة مع معرفة كافية إطلاق موقع على شبكة الإنترنت بشكل مستقل, ودون الكثير من المساعدة من أي شخص آخر.
عمق التقنية المعرفة
سؤال كبير حول تطوير المكدس الكامل هو كيف العميق للذهاب إلى كل منطقة. هو مهندس مكدس كامل حقا من أي وقت مضى سيد أي شيء؟ يجادل البعض أنه من الممكن ، ولكن قد لا يكون الغرض من الذهاب مكدس كامل.
معظم الشركات ترغب في توظيف مهندسين مكدس كامل لديهم القليل من المعرفة في كل مكان. هؤلاء المهندسين قد تتخصص في مجال واحد ، ولكن انهم قادرون على شغل أي دور عند الحاجة.
ديفس الذين بدأوا للتو في هذا الطريق ينبغي لعبة في جميع المناطق تعلم "فقط بما فيه الكفاية" لحل المشاكل عند نشوئها. هذا يعطي تفسيرا عالميا حقيقيا للتقنيات لمعرفة كيف تنطبق المشاكل المختلفة على المشاريع الحقيقية.
أكبر فائدة من الترميز المكدس الكامل هو القدرة على بناء التطبيقات الخاصة بك دون العمل من أجل أي شخص آخر.
إذا كنت تتعلم كل مرحلة من مراحل عملية التطوير ، فيمكنك فعل كل شيء بنفسك. لا تحتاج إلى أن تكون على درجة الماجستير في PHP لإنشاء تطبيق Laravel مخصص. وأنت لست بحاجة إلى أن تكون أداة جافا سكريبت JavaScript لإنشاء تنقل مرن منسدل ، خاصةً بعد أن أصبح لدينا الكثير من التعليمات البرمجية مفتوحة المصدر على الويب.
فكيف يجب أن تذهب إلى أي من هذه المناطق؟ هذا الأمر متروك لك تمامًا ، وربما تتغير إجابتك بمرور الوقت.
ولكن عند البدء أولاً ، فقط تعمق بما يكفي لتنفيذ ما تعلمته في مشروع حقيقي. عندما تصطدم بشيء لا تفهمه, استخدامه كفرصة للذهاب أعمق, و معرفة المزيد عن هذا الموضوع بالذات.
اختيار اللغات
إنه لأمر محير بالنسبة للمطور الجديد أن يختار التقنيات التي يتعلمها. الحصول على الضروريات للخروج من الطريق, HTML و CSS مطلوبة تمامًا. جافا سكريبت هي أيضا ضرورة, لكنك لا تحتاج إلى اعتبار نفسك سيد JS. ومع ذلك ، يجب أن تكون مهتمًا بمعرفة أكثر من مجرد جافا سكريبت عادي.
يتعلم معظم المطورين مسج كذلك ، لكن الأطر مثل React أو Ember أو Angular أو Vue أو Backbone تقدم جميعها عملية أبسط لبناء تطبيقات الويب كاملة النطاق.
من الممكن أن تغوص في تعلم أعمق آثار جافا سكريبت الهوى, مثل الرسوم المتحركة ، لكنها اختيارية تمامًا. يجب أن يعرف مطور المكدس الكامل ما يكفي لإنجاز المهمة ، والانتقال من هناك.
خلفية لغة الخلفية هي أقل حول الميزة التقنية ، وأكثر من ذلك عن الراحة. معظم المبرمجين يدركون ذلك بيثون هي لغة أكثر تنوعا من PHP, لكن غالبية المواقع تعمل على خوادم PHP. هذا يجعل فب لغة قيمة لمزيد من الشركات.
اختر اللغة التي تناسب احتياجاتك ، أو تقدم لك أفضل الفرص. ضع في اعتبارك أيضًا ذلك أنت لست عالقًا مع لغة خلفية واحدة إلى الأبد. إذا بدأت بـ Ruby لكن انتقلت إلى Python فلن تفقد أي شيء في هذه العملية.
ومع ذلك ، أوصي بمجرد العثور على لغة خلفية تريدها ، الخوض في هذه اللغة بشكل أعمق التقاط إطار العمل ذات الصلة. PHP به Laravel ، و Ruby لديه Rails ، و Python لديه Django - من بين العديد من الخيارات الأخرى. ستعمل هذه الأُطُر على تسريع عملية التطوير الخاصة بك ، وتساعدك على تنظيم تطبيقاتك بشكل صحيح.
قواعد البيانات والخوادم
اختيار محرك قاعدة بيانات يأتي حسب متطلبات المشروع ومكدس الخادم. يعمل PHP غالبًا مع MySQL ، لذلك هذا هو الخيار الأكثر تفضيلًا. ال اثنين من أكبر مداخن الويب اليوم هم مصباح (Linux-Apache-MySQL-PHP) and تعني (MongoDB-ExpressJS-AngularJS-نود.جي إس).
تقدم معظم شركات الاستضافة LAMP منذ البداية دون الحاجة إلى إعداد. لكن الحلول المخصصة مثل Digital Ocean تسمح لك بتشغيل أي شيء تقريبًا بشحوم صغيرة. يمكنك العثور على المزيد من مكدسات الويب في هذه القائمة ، أو من خلال البحث حولها عبر الإنترنت.
وغالبا ما تكون قاعدة البيانات التي تختارها مرتبطة بلغتك الخلفية. بيثون يأتي مع دعم SQLite افتراضيا ، و ROR يمكن أن تعمل ديف عادة مع أي شيء. وبصراحة ، يمكن لأي لغة عادة العمل مع أي قاعدة بيانات.
لكنك ترغب في اختيار شيء شائع بما يكفي لاستخدامه في غالبية مشاريع الويب. SQL هي لغة عامة ، وتستخدم في الغالب نفس بناء الجملة في جميع محركات قاعدة البيانات. ستجد اختلافات في إعداد الجدول وإدارته ، ولكن هذه عادة ما تكون بسيطة.
خارج قواعد البيانات ، فيما يلي بعض الموضوعات الفنية من جانب الخادم التي قد ترغب في التعرف عليها.
- CDNs واستضافة المحتوى
- خادم تثبيت البرامج والتحديثات
- أفضل التكوينات الخادم لطفرات المرور وأوقات التحميل
- حلول التخزين المؤقت لكل من استعلامات قاعدة البيانات وتخزين نظام الملفات
- النسخ الاحتياطي الآلي لقواعد البيانات والملفات المسطحة ، أو النسخ الاحتياطية لتصوير القرص
- إعداد HTTPS مع إدارة المجال (خوادم DNS ، سجلات CNAME ، إلخ.)
- موضوعات أكثر تفصيلاً ، مثل البريد الإلكتروني ، والخدمات المصغرة ، وموازنة التحميل
واحدة من أفضل الطرق للتعلم ترقيع مع الخوادم كما كنت بناء المشاريع. الاستيلاء على الأساسية VPS حساب ، وحاول إعداد مداخن الخاصة بك. تعد VPSs بيئات خوادم افتراضية كاملة حيث يمكنك التحكم الكامل في تكوين (أو إتلاف) كل شيء. أيضًا ، القائمة أعلاه ليست خريطة طريق مطلوبة لجميع مطوري المكدس الكاملين.
المعرفة الوحيدة التي تحتاج حقا هو كل ما هو مطلوب لإنشاء بيئة خادم فارغة ، وتثبيت البرنامج اللازم لتشغيل موقع على شبكة الإنترنت. من هناك ، أي شيء آخر هو مجرد تحسين المعرفة. إذا كان لديك أي أسئلة أو تريد أن تتعلم من المحترفين ، فراجع مجتمع Reddit's / r / SysAdmin.
الطريق إلى الأمام
إذا كنت تريد حقًا تعلم تطوير مكدس كامل, ضع قائمة بجميع التقنيات التي تريد أن تتعلمها. من هناك ، يمكنك التعامل معهم واحدًا تلو الآخر في إعداد مشروعات التدريب الخاصة بك لاختبار ما تتعلمه.
تطوير الويب صناعة دائمة التغير ، لذلك يجب أن تكون دائمًا على استعداد لمعرفة المزيد. اختبر العديد من الكدسات واللغات حتى تجد ما تريد. لكن كن مستعدًا دائمًا للتعمق أكثر!
هل تطوير المكدس الكامل يستحق الجهد المبذول؟ هذا لك أن تقرر. ولكن هنا بعض المنشورات ذات الصلة التي قد تساعدك في معرفة ذلك.
- على شرعية "Full-Stack" (heapsortjobs.com)
- لذلك أنت تريد أن تصبح مطور مكدس كامل (rubysteps.com)
- 7 نصائح حول كيف تصبح مطور مكدس كامل (usersnap.com)