كيف تصبح مطورًا متكاملًا: الجزء 2

نشرت: 2017-12-02

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

تحفيز

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

الخوادم مطلوبة لمعالجة بيانات المستخدم وتخزين الملفات وتحويلها إلى HTML / CSS / JS. بعد ذلك ، تخدمه هذه الخوادم في المتصفح بالشكل الذي يمكن تقديمه للمستخدم. مطلوب قاعدة بيانات لتخزين البيانات المهمة لتطبيقك. لبرمجة الخادم ، نحتاج إلى لغة برمجة نصية من جانب الخادم ولقاعدة البيانات ، نحتاج إلى قاعدة بيانات (duh) ولغة للتواصل معها. هذا بالضبط ما سنفعله في الخطوات التالية. للسبعة الأولى ، راجع المنشور السابق!

جدول المحتويات

الخطوة 8: لغات البرمجة النصية من جانب الخادم

كما ذكرنا سابقًا ، للبرمجة والتواصل مع الخادم الخاص بك ، ستحتاج إلى معرفة لغة يفهمها. على عكس الواجهة الأمامية حيث يكون Javascript هو الخيار الوحيد ، هناك عدد كبير من الخيارات المتاحة لك للبرمجة على الواجهة الخلفية. وأكثرها شيوعًا هي Java و PHP و Python و JavaScript و Ruby.
PHP بها عيوبها ، لكنها تحتوي على أفضل منحنى تعليمي من بين جميع اللغات والأطر التي استخدمتها حتى الآن. و PHP تدور حول ترميز الحلول السريعة (والقذرة). لذلك ، في فترة زمنية قصيرة للغاية ، يمكنك إنشاء تطبيق ويب تفخر به للغاية.
كيف تصبح مطور برامج ويب كامل المكدس UpGrad Blog الواجهة الخلفية للواجهة الأمامية
Java هي لغة برمجة للأغراض العامة وربما اللغة الأكثر شيوعًا في كل العصور. إنها تحظى بشعبية كبيرة في إنشاء تطبيقات الأجهزة المحمولة (على نظام Android الأساسي) وتستخدم على نطاق واسع في معظم شركات التكنولوجيا الكبرى. يعد Head First Java مكانًا ممتازًا لتعلم هذه اللغة في كل مكان.
لتعلم Python ، أوصي بشدة بتعلم Python بالطريقة الصعبة من Zed Shaw وألبرت سويغارت أتمتة الأشياء المملة باستخدام بايثون. إذا قررت استخدام PHP ، فيمكنك تعلم أساسيات اللغة في Codecademy.
أنت تعرف بالفعل ما يكفي من بناء جملة JavaScript لجعل يديك متسخين باستخدام أطر عمل Node والخلفية JS (مثل Express). سأغطي روبي لاحقًا بالاشتراك مع ريلز حيث نادرًا ما يتم استخدامها كلغة قائمة بذاتها.

الخطوة 9: تعلم لغة SQL

بالنسبة للخطوة التالية ، ربما ينبغي عليك اختيار لغة استعلام هيكلية صغيرة (SQL). إنها قواعد البيانات اللغوية التي تتواصل معها. وعلى الرغم من أنك قد لا تستخدمه مباشرة عند التبديل إلى استخدام الأطر ، إلا أنه لا يزال من المفيد معرفة كيفية الاتصال المباشر بقاعدة البيانات الخاصة بك. الخبر السار هو أن لغة SQL سهلة التعلم بشكل لا يصدق. يجب أن تكون قادرًا على فهمها جيدًا في غضون ساعات. يعد Head First SQL مصدرًا رائعًا لهذا الغرض.
كيف تصبح مطور ستاك كامل: الجزء 1

الخطوة 10: تعلم إطار عمل ويب كامل المكدس "تقليدي"

الآن هو الوقت المناسب لتجربة أطر عمل الويب التي يمكنها القيام بمعظم أعمال المستوى الأدنى من أجلك.
لا يوجد نقص في الأطر العظيمة التي يمكن أن تلبي كل غرض يمكن تخيله. ريلز (مكتوبة بلغة روبي) ، سبرينغ (مكتوبة بلغة جافا) وجانغو (مكتوبة بلغة بايثون) هي من بين الأطر الشائعة الاستخدام اليوم. يمكنك إلقاء نظرة على برنامج The Rails التعليمي لمايكل هارتل - المتاح مجانًا.
بقدر ما يتعلق الأمر بـ Django ، فإن البرنامج التعليمي على الموقع الرسمي هو مكان جيد للبدء. بمجرد أن تشعر بالراحة تجاه أساسيات إطار العمل ، أعطِ مغرفتين من Django قراءة. إنه أحد أفضل كتب التكنولوجيا على الإطلاق.
إذا قررت السير في طريق الربيع ، فأنا أقترح بشدة الاشتراك في برنامج تطوير البرامج UpGrad & IIIT-B. يمنحك البرنامج نظرة عامة شاملة للغاية للإطار ويساعدك على بناء خلفية قوية وقابلة للتطوير.

الخطوة 11: أطر عمل Javascript Full-Stack و MEAN Stack

منذ وقت ليس ببعيد ، كان تطوير الواجهة الخلفية يعتمد على مفهوم دورة الطلب والاستجابة. على سبيل المثال ، أرسل المتصفح طلبًا واستجاب الخادم عن طريق بث صفحة ويب بتنسيق HTML. ومع ذلك ، منذ أوائل عام 2010 ، أصبح المزيد والمزيد من التطبيقات في الوقت الفعلي.
يتغير هيكل صفحة الويب بأكملها دون تحديث ويتصرف بشكل ديناميكي بناءً على مدخلات المستخدم وتفاعله (فكر في الدردشة ، والإعجاب ، والتعليق ، ومقاطع الفيديو الحية وردود الفعل ، وما إلى ذلك).
كيف تصبح مطور برامج ويب متكامل Back-end UpGrad Blog
في مثل هذا السيناريو ، ببساطة لا تكفي دورة الطلب والاستجابة البسيطة. لذلك ، كان هناك زيادة في الاهتمام مؤخرًا نحو البرمجة غير المتزامنة وجعل طلبات AJAX هي القاعدة. تميل أطر عمل جافا سكريبت إلى التميز في هذا المجال. لذلك ، من المنطقي التعرف على أحد أطر عمل JS الرئيسية المتوفرة في السوق. الأكثر شعبية هما MEAN Stack و MeteorJS.
مقابلة مع فاروق آدم ، الشريك المؤسس ، Fynd

يعتبر تعلم MEAN أكثر تعقيدًا إلى حد ما نظرًا لطبيعته غير المتزامنة وعادة ما تميل عقدة رد الاتصال hell node إلى إطلاق العنان. ولكن الآن بعد أن أصبحت مطورًا متمرسًا ، فأنت ناضج بما يكفي للتعامل مع خصوصياته.
Meteor هو إطار عمل JS كامل المكدس أقوم بتجربته حاليًا. مفهوم Meteor مبهج للغاية - إطار عمل واحد بلغة واحدة يعتني بجميع مكونات التطبيق (الواجهة الأمامية والخلفية وقاعدة البيانات). ومع ذلك ، يأتي هذا على حساب حرية التخصيص. بمجرد قيامك ببناء شيء ما في Meteor ، فمن المستحيل عمليا تغيير قاعدة البيانات أو إطار عمل الواجهة الخلفية إذا اخترت القيام بذلك. رغم ذلك ، ما زلت أعتقد أن هذه تقنية جديرة بالاهتمام للتعلم. من المعروف أن النيزك قوي للغاية. إنه قادر على القيام بأشياء في مئات الأسطر من التعليمات البرمجية حيث تتطلب الأطر التقليدية الأخرى ألفًا.

خاتمة

هذه نهاية الجزء 2. في هذا المنشور ، قمنا بتغطية الموارد المتعلقة بتطوير الواجهة الخلفية والعديد من التقنيات الكاملة المتاحة. يمكنك الآن وبكل فخر أن تطلق على نفسك اسم مطور متكامل. تهانينا!
لكن قصة تطوير الويب الكامل لا تنتهي هنا. مع ظهور iPhone ، كانت هناك ثورة في الهواتف الذكية حول العالم. يتجه المزيد والمزيد من الأشخاص نحو استخدام الهواتف الذكية بدلاً من أجهزة الكمبيوتر المكتبية. في مثل هذا السيناريو ، من الضروري أن تتعلم إنشاء تطبيقات لاثنين من أكثر الأنظمة الأساسية شيوعًا: Android و iOS. سنغطي هذا في الجزء التالي والأخير من هذه السلسلة. بالإضافة إلى ذلك ، سننظر أيضًا في الأطر التي تسمح لنا بإنشاء تطبيقات أصلية باستخدام Javascript (Ionic ، و React Native ، وما إلى ذلك).
حتى ذلك الحين ، وداعًا.
تعليقاتك وإقتراحاتك مرحب بها!

كن مطورًا للمكدس الكامل

UpGrad و IIIT-Bangalore's دبلوم PG في تطوير البرمجيات
يتعلم أكثر