web
16 Liked

طريقك لبرمجة الويب

في هذه المقالة سأوضح لك الخطوات التي يجب عليك اتباعها لتصبح مطور ويب و سأوضح لك مايجب عليك تعلمه وماهو الوقت المناسب لتعلم كل لغة وتقنية ومن اين تجد المصدر المناسب للتعلم.

كيف تصبح مطور ويب ناجح؟

قبل كل شئ المال لن يقودك الى النجاح فإن كان هدفك هو جمع المال من خلال تعلمك برمجة الويب فـ للاسف لن تنجح ?

ان كان لديك رغبة  وصبر وحُب لتعلم برمجة الويب فستصبح مطور ناجح وكل ماعليك فعله هو ان تثابر وتصبر وتمارس ماتتعلمه اولاً بأول.

لدي الرغبة واريد ان اصبح مطور ويب ولكن ماهو الطريق؟

اذا اردت الدخول الى عالم برمجة الويب, قد تصادف العديد من اللغات والعديد من قواعد البيانات, وربما أول سؤال قد يتبادر الى ذهنك! اي لغة استخدم؟ وماهي قاعدة البيانات المناسبة! سأحاول في هذه التدوينة ان اختصر لك المشوار لتحدد اللغة التي تناسبك وتبدأ في عالم الويب.

برمجة الويب تختلف عن برمجة تطبيقات سطح المكتب فـ عادتاً تطبيق سطح مكتب لاتحتاج الا للغة واحدة سواء كانت java, C#, vb او غيرها, ولكن تطبيقات الويب قد تدمج من لغة الى سبع لغات على سبيل المثال في موقع واحد, وسأوضح في هذه المقالة بعض اللغات البرمجية بالاضافة الى ماهو السيرفر والاستضافة.

لغات البرمجة

في معظم الاحيان لغات البرمجة تنقسم الى ثلاث مجموعات رئيسية ويوجد بعض اللغات المشتركة, فاللغات الرئيسية هي php, .net, Java EE واللغات والتقنيات المشتركة قد تكون html, css, ajax, javaScript ويوجد ايضا قواعد البيانات mySql, MS-Sql.

مثال:

لنفرض مثلا اردت بناء مبنى, فأول ماستقوم به هو بناء هيكل المبنى, هذا الهيكل يمثل الشكل الخارجي للمبنى ولايقدم اي خدمة اطلاقاً, الهيكل هنا يمثل لغة HTML, ثم بالتاكيد ستضيف لون للمبنى وتقوم تعديل تصميم المبنى ليبدو بشكل افضل “CSS”, بعد ذلك ستقوم بتوصيل الكهرباء والماء وربط الغرف ببعض عن طريق كيابل او انابيب مياه “PHP”, وبالتاكيد الكهرباء والماء سيكون لها مركز رئيسي خارج المبنى وهو من يزود المبنى بالمصادر “Database”, واخيرا انت مخير باضافة بعض التفاصيل التي تريحك في غرف المبنى لزيادة الرفاهية والراحة لمن يسكن المبنى, مثلاً اضافة جهاز تحكم للمكيف او اضاءة تعمل بشكل تلقائي مع غروب الشمس وغيرها من الامور “Ajax & JavaScript” .

من أين أبدا؟

Where_To_Start1

تعلم لغة HTML

HTML هي اختصار “HyperText Mark-up Language”، إذا أردت إنشاء موقع فلا توجد طريقة أخرى غير استخدام لغة HTML، فهذه اللغة هي الاساس في برمجة تطبيقات الويب, وتعلم اللغة جدا بسيط وسهل فهي عبارة عن أوسم tags تحفظها وتفهم طريقة عملها ومن ثم تقوم بترتيبها لتناسب تصميم صفحتك.

بعض المواضيع المهمة في تعلم لغة HTML:

تعلمت لغة HTML ماهي الخطوة التالية؟

تعلم لغة JavaScript

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

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

بعض المواضيع المهمة في تعلم  لغة JavaScript:

تعلمت الجافا سكربت, مالتالي؟

تعلم تقنية CSS

هي إختصار Cascading Style Sheets معناها الحرفي هو صفحات الانماط المتراصه ، أو صفحات الأنماط الانسيابية, تقنية تهتم بالتصميم فهي تهتم بالخطوط، الألوان، الهامش، والعرض والارتفاع، صورة خلفية الموقع، وكيفية توزيع المساحات وأشياء أخرى كثيرة; فيمكنك تعديل تنسيق صفحات الـ Html مباشرة من نفس الصفحة او ان تستخدم ملف Css خارجي مستقل, وهذا هو الافضل لكي يسهل لك تعديل التنسيق لاحقاً بدون الحاجة الى تعديل كل صفحة Html بشكل مستقل, كما انه بإمكانك ربط ملف Css واحد يتضمن تنسيق واحد على جميع صفحات موقعك وهنا تكمن قوة هذه التقنية.

بعض المواضيع المهمة في تعلم الـ Css:

تعلمت الـ Css ما التالي؟

حتى هذه النقطة فإن مسماك هو “front-end web development” وهو الشخص اللذي يتعامل مع الواجهة الرئيسية وكيف تظهر للمستخدم على المتصفح, والخطوة التالية لك هي اما ان تكمل في هذا المجال وتبحث عن نقاط ضعفك في التقنيات السابقة وتحاول ان تطورها او تنتقل الى المسمى التالي وهو “back-end web development” وهو الشخص الذي يتعامل مع الكود الذي سيعمل على السيرفر والذي سيقوم بجلب او تخزين البيانات من قواعد البيانات بالاضافة الى معالجة كل امر يرسل المستخدم الى السيرفر وغيرها من الامور.

وانت مخير بين ان تكمل في مجال الـ Front end او الانتقال الى الـ back end او ان تجميع بينهم وتتعلمهم جميعاً وبالتالي سيصبح مسماك Full stack developer

كيف ابدأ في الـ Back-end ؟

انت مخير بين عدة لغات وتقنيات تستطيع استخدامها لكتابة بعض الاكواد لتعمل على السيرفر ومن بينها:

لغة PHP

PHP عباره عن لغة تسمى ( Server Side Scripting Language ) ونعني بذلك أنها تترجم من جهة السيرفر وليس من جهاز المستخدم, بمعنى انك غير مطالب بتثبيت اي برنامج على جهاز المستخدم ليستطيع تصفح الموقع, جميع الامور ستتم في السيرفر وستعرض فقط للمستخدم عن طريق المتصفح, لغة مفتوحة المصدر فيستطيع اي مطور التعديل او اضافة مكتباته الخاصة.

لغة php تعتبر من اللغات القوية في مجال الويب, وتحتوي على مكتبات ودوال مثل اي لغة برمجية اخرى فعلى سبيل المثال تستطيع التعامل مع الشروط “IF”, التكرار “Loop”, المصفوفات وايضا التعامل مع انواع البيانات data type, وغيرها من الامور الموجودة في اي لغة برمجية اخرى.

بعض المواضيع المهمة في الـ PHP:

Express

Express هي مكتبة للـ Node JS تسمح لك باستقبال اي Request من صفحة الويب ومن ثم تقوم بمعالجتها باستخدام بعض اكواد الـ JavaScript وبعد ذالك ترجع Response للصفحة من جديد.

ماهي البرامج التي احتاجها؟

يمكنك استخدام اي محرر نصوص مثل المفكرة على سبيل المثال, ولكن لتسهيل طريقة البرمجة يمكنك استخدام المحرر Notepad++ لمستخدمين الويندوز أو sublimetext لمستخدمين الماك, مشابه للمفكرة ولكن مخصص أكثر للبرمجة, أو يمكنك استخدام الـ Eclipse او NetBeans فمن خلالهما تستطيع البرمجة للـ PHP, Html وغيرها من لغات الويب , كما انه بإمكانك استخدام المحررphpDesigner فهو من اجمل المحررات المجانية على الويندوز والتي تدعم العديد من لغات الويب.

السيرفر

السيرفر عبارة جهاز حاسب اما ان يكون مخصص من الاساس للعمل كسيرفر او ان يكون جهاز شخصي, تعمل بانظمة تشغيل مخصصة للسيرفرات اما ان تكون ويندوز او لينكس ويفترض ان تعمل هذه الاجهزة على مدى 24 ساعة وان يكون الاتصال بالانترنت مع هذه السيرفرات جيد جداً, قد يكون السيرفر عالمي وتقدمه شركات استضافة اي تستأجر مساحة مخصصة لك وهم من يقدمون لك الخدمة, او ان يكون سيرفر محلي خاص بك تقوم انت بإدراته.

الاستضافة

اذا اردت تجربة موقعك والتأكد من برمجتك, فانت مُخير بين أمرين; الاول ان تقوم بتثبيت سيرفر محلي على جهازك الشخصي لتجربة موقعك, في هذا الخيار تستطيع استخدام بعض البرامج التي تقوم بتحويل جهازك الشخصي الى سيرفر محلي مثل xampp أوwampp , والخيار الثاني ان تقوم بشراء مساحة خاصة لك على سيرفر لدى احد مزودين الخدمة من بينهم Godaddy, HostGator, Dailyrazor, ترايدنت, إكساء وغيرها, كم ان مزود الخدمة يقدم لك Domain خاص بك ولكن ماهو الـ Domain ؟

الدومين –  Domain

يعتبر الدومين أو ما يطلق عليه اسم “النطاق” هو وسيلة تستطيع بها الاتصال بين جهازك وشبكة الانترنت ومشاركة المعلومات من خلاله بينك وبين الناس، وهذا الدومين هو ملك لك ولا يجوز لأي شخص آخر الحصول على نفس الدومين، ويجب أن يكون الدومين “domain” سهل التذكر فهذا يرفع من قيمته بين الناس وبالتالي ترتفع قيمة الدومين التسويقية، وأصل الدومين هو عبارة عن IP، وهو مجموعة من الارقام التي تتم من خلالها عملية نقل المعلومات عن طريق الإنترنت، ولصعوبة تذكر أرقام الدومين لكل موقع تم تحويلها إلي حروف ليسهل ذلك عملية البحث عن دومين أو نطاق أي موقع. entejsites.com

اخيرا

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

مصادر تفيدك

  • موقع W3Schools, يعتبر المرجع الاساسي والرئيسي لجميع مطورين الويب, تجد فيه شرح لمعظم اللغات بإسلوب بسيط وسهل.
  • موقع Tutorialspoint, من المواقع المتميزة التي تشرح لغات الويب بشكل شبه مفصل.
  • قناة TheNewBosten على اليوتيوب تشرح PHP,HTML & CSS, JavaScriptMySql
  • قناة Brad Hussey تشرح طريقة شراء استضافة والبحث عن الدومين المناسب لك.
  • سلسلة على اليوتيوب تشرح طريقة تثبيت سيرفر محلي Xampp وطريقة التعامل معه.
  • موقع codeschool يقدم دورات في برمجة الويب.
  • برمجة مواقع الأنترنت بإستخدام html5 مع CSS3 و JavaScript من منصة رواق.
  • مقالة “مواقع تفيدك في تعلم البرمجة“.

8 Comments

  • Omnia

    August 01, 08 2015 10:10:15

    الله يجزاك جنات النعيم موضوع شامل لكل شيء أحتاجه حالياً ، شكراً ع جهودك ونفع الله بك .

    • Abdullah Alhazmy

      August 02, 08 2015 09:08:16

      ويحزاك بالخير, بالتوفيق ان شاء الله

  • العلا

    September 12, 09 2015 02:15:29

    مقالة جميله و واضحه
    أحسنت وجزاك الله خيرآ

    شكرآ
    ممنون لك : )

  • أحمد طاهر

    September 19, 09 2015 07:49:37

    الله يسعدك يا أستاذ عبد الله، كنت محتاج كثير لهذه المقالة .. فأنا بديت بهذا المجال منذ فترة قصيرة وتعلمت أساسيات HTML وطريقة التنسيق بالـ CSS .. أنت رائع وأنا أحبك.

    الله يوفقك يا رب ويزيدك علماً وبركة

  • T

    November 24, 11 2015 01:23:24

    جزاك الله خيرا

  • Mzon

    December 06, 12 2015 11:31:49

    الله يعافيك ..حابة أسأل ايش الشهادات أو الاختبارات اللي ممكن آخذها بهالمجال زي شهادات مايكروسوفت مثلا..

  • 99

    March 03, 03 2016 05:19:24

    كيف اشوف نتيجة كتابة الآكواد من المحرر نفسه؟
    انا استخدم atom

Leave a Reply