تعلم أساسيات البرمجة من الصفر : خطّة لتعلم البرمجة

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

مقدمة عن تعلم أساسيات البرمجة من الصفر

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

هناك خطط كثيرة تساعدك على تعلم البرمجة من الصفر إن كان ذلك فقط للتعلم او للحصول على فرصة عمل, عليك ان تعلم انه لا يوجد مسار واحد لتعلم البرمجة. وسوف تجد الكثير من التناقضات حول “افضل طريقة لتعلم البرمجة”.

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

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

سأقوم بتقسيم هذه المقالة إلى أهداف، أي أنك بتعلمك هذه الأهداف في هذه المقالة يمكن القول أنك أصبحت “مبرمج” جيّد وجاهز للبدء بمشاريع برمجية صغيرة او حتى البحث عن فرصة عمل مناسبة لك.

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

أساسيات لغة بايثون Basic Programming

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

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

هناك الكثير من المراجع والكتب المجانية على الانترنت لتعلم هذه المفاهيم مثلا من هذا الرابط https://elzero.org/learning-python/

خوارزميات وبنى معطيات Algorithm and Data Structures

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

  • مفاهيم أساسية في الخوارزميات
  • دراسة تعقيد الخوارزميات
  • الخوارزميات العودية
  • الخوارزميات التراجعية
  • بنى المعطيات الاساسية
  • خوارزميات الفرز
  • خوارزميات البحث (الخطي, الثنائي الخ)
  • مفهوم ال Stack
  • مفهوم ال Queue
  • مفهوم اللوائح المترابطة Linked List
  • عمليات على المصفوفات Arrays مثل الفرز (الترتيب) والبحث

في هذه القناة يوجد شرح جيد للخوارزميات وبنى المعطيات

أيضا يحوي هذا العرض التقديمي معلومات جيدة حوال الخوارزميات وبنى المعطيات

https://hama-univ.edu.sy/newsites/inst-tech/wp-content/uploads/2018/10/Algorithms.pdf

البرمجة غرضية التوجه Object Oriented Programming

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

  • ماهي البرمجة غرضية التوجه
  • تعريف الصف Class
  • إنشاء كائن من صف
  • تعريف المتغيرات داخل الصف
  • إنشاء التوابع
  • الوصول إلى متغيرات الصنف داخل التوابع

يوجد على أكاديمية حسوب دليل جميل لتعلم البرمجة غرضية التوجه على الرابط