الرئيسية » المراجع العلمية » التدريب » دورة تدريب البرمجة وعلوم الحاسوب – للمبتدئين

دورة تدريب البرمجة وعلوم الحاسوب – للمبتدئين

دورة تدريب البرمجة وعلوم الحاسوب للمبتدئين

آخر تحديث: سبتمبر 22, 2022

دورة تدريب البرمجة وعلوم الحاسوب – للمبتدئين

مدخل إلى البرمجة وعلوم الحاسوب، دورة تدريب كاملة للمبتدئين، مترجمة إلى العربية.

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

تم تصميم وتنفيذ هذه الدورة التدريبية بواسطة كل من ستيفن وشون من NullPointer Exception.

ترجمة: د. م. مصطفى عبيد، دكتوراه الفلسفة في علوم الحاسوب، ذكاء الأعمال.

محتويات دورة تدريب البرمجة وعلوم الحاسوب – للمبتدئين

  • مقدمة
  • ما هي البرمجة؟
  • كيف نكتب الكود Code؟
  • كيف نحصل على المعلومات من أجهزة الحاسوب؟
  • ماذا تستطيع الحواسيب أن تفعل؟
  • ما هي المتغيرات Variables؟
  • كيف نتعامل مع المتغيرات؟
  • ما هي العبارات الشرطية If Statments؟
  • ما هي المصفوفات أو الصفائف Arrays؟
  • ما هي الحلقات Loops؟
  • ما هي الأخطاء Errors؟
  • كيف نصحح الكود Debug Code؟
  • ما هي الوظائف أو الدوال Functions؟
  • كيف يمكننا استيراد الدوال؟
  • كيف نصنع دوالنا الخاصة؟
  • ما هي قوائم الصفوف والقواميس ArrayLists and Dictionaries؟
  • كيف يمكننا استخدام هياكل البيانات Data Structure؟
  • ما هي العودية أو التكرارية Recursion؟
  • ما هو الكود الكاذب Pseudocode؟
  • أسس اختيار اللغة الصحيحة المناسبة لك.
  • تطبيقات البرمجة Applications of Programming

مضمون الدورة من محتوى الفيديو

مرحبا بكم في دورة مقدمة في البرمجة. اسمي ستيفن واسمي شون. خلال الـ 90 دقيقة القادمة سنأخذك عبر هذه السلسلة المكونة من 21 مقطعًا مختلفًا، والتي نأمل أن تغطي أساسيات برمجة الحاسوب، والتي يمكن أن تنطبق على أي وكل لغات البرمجة التي قد ترغب في تعلمها والتخصص فيها. سنبدأ بأبسط سؤال عن ماهية البرمجة Programming.

ومن هناك، سنعمل في طريقنا بينما نتحدث عن السمات المشتركة لعلوم الحاسوب مثل الحلقات Loops والصفائف Arrays، سنناقش كيفية قراءة وكتابة التعليمات البرمجية وتصحيح الكود Code الذي كتبته، وبعض الإستراتيجيات لمساعدتك على تخطيط التعليمات البرمجية وغير ذلك الكثير.

القائمة الكاملة للموضوعات التي سيتم تغطيتها في هذا الفيديو بنمط المحاضرة يتم عرضها على الشاشة. الآن، بالإضافة إلى ذلك، سيكون هناك طوابع زمنية لكل مقطع في وصف الفيديو، لذا

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

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

أولاً، سنغطي فقط النقاط الرئيسية التي تنطبق على كل لغات البرمجة. لذلك سنبتعد عن موضوعات مثل البرمجة الشيئية Object Oriented Coding، والتنقل عبر سطر الأوامر Command Line Navigation، فهذه أشياء خاصة بلغات معينة. بالإضافة إلى ذلك، لن تكون هناك برامج مطلوبة لتنزيلها لمتابعة هذا البرنامج التعليمي، لأننا لن نكتب أي كود أو جمل برمجية في المعرف، وذلك لإبقاء الأمور بسيطة ومركزة.

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

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

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

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

الآن، البرمجة ليست بسيطة مثل إعطاء تعليمات لصديق. نظرًا لأنه في حالة المبرمجين، لا يتحدث الحاسوب نفس اللغة التي تتحدثها أنت. لا يفهم الحاسوب سوى رمز الآلة، وهي لغة رقمية تُعرف باسم لغة النظام الثنائي Binary System، تم تصميمها بحيث يتمكن الحاسوب من قراءتها وتنفيذ التعليمات بسرعة. ويتم تحويل كل التعليمات التي يتم تغذيتها إلى الحاسوب إلى سلسلة من الآحاد والأصفار (1 وصفر) ثم يتم تفسيرها بواسطة الحاسوب لتنفيذ مهمة.

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

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

بالعودة إلى مثال لعبة Lego الخاص بنا، فإن لغة البرمجة ستكون نوعًا ما مثل المترجم القادر على أخذ التعليمات التي تعطيها له باللغة الإنجليزية وترجمتها إلى تعليمات بلغة أخرى يمكن أن يفهمها صديقك الذي لا يتحدث الإنجليزية. هذا يجعل لغات البرمجة مفيدة للغاية، ويجعل وأساس أي برنامج جيد. فكر في لغات البرمجة على أنها ليست الإنجليزية وليست كود الآلة، ولكن في مكان ما في الوسط. هناك العديد من لغات البرمجة المختلفة المتوفرة لكل منها استخداماتها الفريدة.

لغات مثل لغة Python ولغة Java، هي مجرد لغات ذات أغراض عامة يمكن أن تؤدي مجموعة متنوعة من المهام الحسابية، أو الروبوتات. ولغات مثل C أو HTML أو CSS، أو اللغات المصممة من أجل أغراض أكثر تحديدًا، مثل نقل روبوت أو إنشاء موقع ويب. يمكن للغات أيضًا أن تختلف في مدى قوتها. على سبيل المثال لغة JavaScript هي لغة برمجة نصية مصممة للمهام الأصغر، ويمكن أن تنفذ Java أو Python عمليات ضريبية أكثر وأعقد بكثير من الناحية الحسابية.

يمكننا قياس قوة لغات البرمجة، أو مستوى اللغة من خلال مدى تشابهها مع لغة الآلة، والتي هي سلسلة الأصفار والآحاد التي تحدثنا عنها سابقًا. لغات البرمجة منخفضة المستوى، مثل لغة التجميع Assembly، أو لغة C، أقرب إلى لغة النظام الثنائي من لغات البرمجة عالية المستوى، مثل Java أو بايثون.

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

والآن بعد أن عرفنا ما هي البرمجة، كيف نكتب الكود بالفعل؟ يبدو أننا نستطيع ببساطة كتابة الكلمات في مستند نصي وافترض تلقائيًا أن الحاسوب يمكنه ترجمتها إلى لغة الآلة، وقراءته وتنفيذ مهمة ما مثل فتح المتصفح. بالإضافة إلى ذلك، لا يمكننا فقط كتابة كود عشوائي لا معنى له بلغات برمجة معينة مذكورة مما سبق، ونتوقع أن يفهمها الحاسوب. إذن كيف يُفترض بنا أن نكتب الكود إذن؟ حسنًا، الجواب هو باستخدام ما يطلق عليه اختصارًا IDE. وهو اختصار اسم بيئة التطوير المتكاملة Integrated Development Eenvironment، وهي بيئة تسمح بتسهيل كتابة الكود بواسطة الحاسوب. إنها توفر واجهة رسومية على جهاز الحاسوب الخاص بك حيث يكون بإمكان المبرمج كتابة التعليمات البرمجية وتشغيلها وتصحيحها بسهولة دون الحاجة إلى القلق بشأن أي مشاكل مع تعقيدات أو تفسير البرنامج.

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

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

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

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

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

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

حتى في هذا المثال البسيط، يمكنك معرفة مدى أهمية بناء الجملة عند تعلم لغة جديدة. منذ حين بقي هدف برنامجنا كما هو، وهو تحديد عدد صحيح بقيمة ثلاثة، جميع لغات البرمجة الموضحة اتخذت مناهج مختلفة لتنفيذ هذا الأمر. كل هذه اللغات تتطلب منك أن تتبع القواعد النحوية لأنك تذكر أن أجهزة الحاسوب غبية للغاية. إذا نسيت فاصلة منقوطة أو أخطأت في وضع حرف، فلن يعمل البرنامج بأكمله وسيرسل إليك رسالة خطأ نحوي Syntax Error، وهو شيء سنتحدث عنه لاحقًا. فكر في هذا كما لو نسيت فاصلة في جملة إنجليزية ويُساء تفسير السياق الكامل لما تحاول قوله. على سبيل المثال، في الجملة التالية: Let’s eat grandmo، (هيا نأكل يا جدتي). إذا نسيت تلك الفاصلة، وبالرغم أنه قد يبدو خطأ بسيطًا، إلا أن ذلك سيغير سياق الجملة بالكامل، مما يجعل الأمر يبدو وكأنك ستأكل جدتك. أنت تتبع نفس القواعد في البرمجة، فإذا نسيت الفاصلة المنقوطة، فسوف يُساء تفسير السياق الكامل بواسطة بيئة التطوير وسوف يؤدي ذلك إلى أن يتلف برنامجك.

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

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

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

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

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

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

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

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

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

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

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

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

الآن، لا يمكن لجهاز الحاسوب الخاص بنا العمل مع الأرقام فحسب، بل يمكنه أيضًا العمل مع السلاسل. والسلاسل، بالمناسبة، هي مجرد طريقة أخرى لقول النص. على سبيل المثال، hello world عبارة عن سلسلة، والحرف A هو سلسلة، وأي شيء محاط بعلامات اقتباس يُشار إليه كسلسلة في لغات البرمجة. سنغطي المزيد عن السلاسل قليلاً عندما نتحدث عن المتغيرات. لكن في الوقت الحالي، دعنا نواصل.

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

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

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

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

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

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

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

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

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

مشاهدة دورة تدريب البرمجة وعلوم الحاسوب – للمبتدئين

ملاحظة: سيتم نشر بقية موضوعات الدورة في مقالات جديدة منفصلة. يمكنك مشاهدة الفيديو التالي الذي يشتمل على كل موضوعات دورة التدريب الكاملة ومدته ساعتين.

YouTube player

لمشاهدة المزيد من الدورات والفيديوهات تابع: قناة يوتيوب مركز البحوث والدراسات متعدد التخصصات