الانتقال إلى المحتوى
My Subject Hub

دورة ⁦C++⁩ عبر الإنترنت: من أول برنامج تترجمه إلى المؤشرات والأصناف

تمنحك ⁦C++⁩ تحكمًا في طريقة استخدام البرنامج للذاكرة، ولهذا تستخدمها مقررات جامعية كثيرة في البرمجة والبرمجة كائنية التوجه وهياكل البيانات. تتعلّمها خطوة بخطوة في حصص مباشرة وفردية: تكتب كل برنامج وتترجمه بنفسك، ويساعدك المعلم على فهم كل خطأ.

  • الحصة الأولى مجانية (30 دقيقة)
  • مباشرة وفردية عبر الإنترنت
  • معلمات عند الطلب
  • نرد خلال 24 ساعة

دورة ⁦C++⁩ في لمحة

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

فيمَ تُستخدم ⁦C++⁩؟

تُستخدم ⁦C++⁩ حيث تهم السرعة والتحكم في الذاكرة: الألعاب ومحركات الألعاب، وأنظمة التشغيل، والأجهزة المدمجة، ومتصفحات الويب، والأنظمة المالية. وتستخدمها جامعات كثيرة أيضًا لتدريس البرمجة والبرمجة كائنية التوجه وهياكل البيانات.

من يجب أن يتعلم ⁦C++⁩؟

طلاب الجامعات والمدارس الذين يستخدم مقررهم ⁦C++⁩، والمبتدئون الذين يريدون فهم تعامل البرامج مع الذاكرة، والطلاب الذين يستعدون لهياكل البيانات والخوارزميات.

ماذا أحتاج قبل أن أبدأ؟

لا تُشترط خبرة في البرمجة، وإن كانت الخبرة في أي لغة تساعد. تحتاج إلى حاسوب محمول أو مكتبي عليه مترجم ⁦C++⁩ أو بيئة تطوير؛ ويساعدك المعلم على تثبيته.

ما الموضوعات التي تغطيها الدورة؟

أساسيات ⁦C++⁩، والمتغيرات وأنواع البيانات، والشروط والحلقات، والدوال، والمصفوفات والنصوص، والمؤشرات والمراجع، والأصناف والكائنات، والبرمجة كائنية التوجه، وهياكل البيانات مع تمارين عملية.

كيف تُقدَّم الحصص؟

مباشرة وفردية عبر Microsoft Teams أو Zoom. تشارك شاشتك وتكتب الشيفرة وتترجمها بنفسك في المترجم الذي يستخدمه مقررك، بينما يشرح المعلم ويساعدك على تتبّع الأخطاء.

كيف أبدأ تعلّم ⁦C++⁩؟

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

لمن تناسب دورة ⁦C++⁩؟

  • طلاب الجامعة الذين يستخدم مقرر البرمجة أو البرمجة الكائنية أو هياكل البيانات لديهم ⁦C++⁩
  • طلاب المدارس والكليات الذين يستخدم مقرر علوم الحاسوب لديهم ⁦C++⁩
  • المبتدئون الذين يريدون فهم كيف تستخدم البرامج الذاكرة
  • مبرمجو Python الذين يحتاجون إلى ⁦C++⁩ لمقرر دراسي
  • الطلاب الذين يستعدون لتعلّم هياكل البيانات والخوارزميات بلغة ⁦C++⁩

أين يتعثر الطلاب عادةً

  • أخطاء المترجم التي تشير إلى السطر الخطأ
  • المؤشرات والعناوين والرمزان ⁦*⁩ و⁦&⁩
  • برامج تتوقف بخطأ segmentation fault
  • الفرق بين التمرير بالقيمة والتمرير بالمرجع
  • ملفات الترويسة والمُنشئات وأين تُكتب شيفرة الصنف

المتطلبات المسبقة

  • لا تُشترط خبرة في البرمجة. لكن الخبرة في أي لغة تجعل الموضوعات الأولى أسرع.
  • أن تستخدم الحاسوب براحة، بما في ذلك حفظ الملفات في المجلدات.
  • مترجم ⁦C++⁩ أو بيئة التطوير التي يستخدمها مقررك. يساعدك المعلم على تثبيته في الدرس الأول.

ما تحتاجه للدروس

  • حاسوب محمول أو مكتبي. الهاتف أو الجهاز اللوحي لا يكفي لكتابة الشيفرة.
  • اتصال مستقر بالإنترنت وبرنامج Microsoft Teams أو Zoom.
  • مكان هادئ تستطيع فيه مشاركة شاشتك والتحدث مع المعلم.

منهج دورة ⁦C++⁩

الموضوعات بالترتيب الذي تُدرَّس به عادةً. يكيّف المعلم الترتيب والعمق حسب مستواك، وحسب منهج مدرستك أو جامعتك إن شاركته.

  1. أساسيات ⁦C++⁩

    • كتابة البرنامج وترجمته وتشغيله
    • ⁦main()⁩ و⁦#include⁩ ونطاق الأسماء ⁦std⁩
    • الإدخال والإخراج باستخدام ⁦cin⁩ و⁦cout⁩
    • قراءة أخطاء المترجم وتحذيراته
  2. المتغيرات وأنواع البيانات

    • ⁦int, double, char, bool⁩ و⁦std::string⁩
    • تعريف المتغيرات وتهيئتها؛ ⁦const⁩ و⁦auto⁩
    • القسمة الصحيحة والفيض وتحويل الأنواع
    • العوامل وأولوياتها
  3. الشروط والحلقات

    • ⁦if⁩ و⁦else if⁩ و⁦else⁩ و⁦switch⁩
    • حلقات ⁦while⁩ و⁦do-while⁩ و⁦for⁩
    • الحلقات المتداخلة وطباعة الأنماط
    • ⁦break⁩ و⁦continue⁩
  4. الدوال

    • التصريح عن الدوال وتعريفها
    • المعاملات والقيم المُرجعة وتحميل الدوال الزائد
    • التمرير بالقيمة والتمرير بالمرجع
    • الاستدعاء الذاتي (recursion)
    • تقسيم الشيفرة إلى ملفات ترويسة وملفات مصدر
  5. المصفوفات والنصوص

    • المصفوفات ثابتة الحجم والمرور عليها بالحلقات
    • المصفوفات ثنائية البعد (المصفوفات الرياضية)
    • ⁦std::string⁩ ودوالها الأعضاء
    • نصوص لغة C، ولماذا ⁦std::string⁩ أكثر أمانًا
    • ⁦std::vector⁩ كمصفوفة يمكن أن تكبر
  6. المؤشرات والمراجع

    • عناوين الذاكرة والعامل ⁦&⁩
    • التصريح عن المؤشرات والوصول إلى ما تشير إليه
    • المراجع، ومتى تستخدمها بدلًا من المؤشرات
    • المؤشرات والمصفوفات
    • الذاكرة الديناميكية باستخدام ⁦new⁩ و⁦delete⁩، وتجنّب تسرّب الذاكرة
  7. الأصناف والكائنات

    • الأصناف والكائنات، والأعضاء العامة والخاصة
    • المُنشئات والمُهدِّمات والدوال الأعضاء
    • المؤشر ⁦this⁩
    • وضع الصنف في ملف ترويسة وملف مصدر
  8. البرمجة كائنية التوجه

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

    • ⁦std::vector, std::stack, std::queue, std::map⁩
    • قائمة مترابطة مبنية بالمؤشرات
    • مكدّسات وطوابير مبنية على المصفوفات
    • البحث الخطي والثنائي؛ ترتيب الفقاعة والترتيب بالاختيار
    • مجموعات تمارين على نمط مهام المختبرات الجامعية

طريقة عملية للتعلّم

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

تمارين ومشروعات تطبيقية

تمارين معتادة من الدروس، من الحلقات الأولى إلى الهياكل المبنية بالمؤشرات. يختارها المعلم بما يناسب مستواك ومقررك.

  • نظام نتائج الطلاب

    خزّن الأسماء والدرجات في مصفوفات أو vector، واحسب المتوسطات، وجد الطالب الأول، واطبع جدولًا منسقًا.

    يتدرّب على

    • المصفوفات وvector
    • الحلقات
    • الدوال
  • حاسبة المصفوفات

    اجمع المصفوفات المخزنة في مصفوفات ثنائية البعد واضربها واحسب منقولها.

    يتدرّب على

    • المصفوفات ثنائية البعد
    • الحلقات المتداخلة
    • تمرير المصفوفات
  • أصناف الحساب المصرفي

    صنف Account للإيداع والسحب، ثم حسابات توفير وحسابات جارية ترث منه.

    يتدرّب على

    • المُنشئات
    • التغليف
    • الدوال الافتراضية
  • قائمة مترابطة من الصفر

    أضف العُقد واحذفها وابحث عنها باستخدام المؤشرات والذاكرة الديناميكية، ثم حرّر الذاكرة عند الانتهاء.

    يتدرّب على

    • المؤشرات
    • ⁦new⁩ و⁦delete⁩
    • البُنى والأصناف

واجباتك تبقى من عملك

يشرح المعلم ويراجع الكود معك ويساعدك على إيجاد الأخطاء، لكنه لا يكتب لك الواجبات أو مهام المختبر التي تُقيَّم.

اقرأ سياسة النزاهة الأكاديمية

ما الذي يمكنك أن تتوقع تعلّمه

  • كتابة برامج ⁦C++⁩ وترجمتها وتشغيلها، وإصلاح أخطاء المترجم بنفسك
  • استخدام المصفوفات و⁦std::string⁩ و⁦std::vector⁩ لتخزين البيانات ومعالجتها
  • شرح المؤشرات والمراجع واستخدامها دون أن يتوقف البرنامج
  • الاختيار بين التمرير بالقيمة والتمرير بالمرجع
  • تصميم أصناف بمُنشئات وبيانات خاصة ووراثة
  • بناء هياكل بيانات بسيطة مثل المكدّس أو القائمة المترابطة

هذه أهداف الدروس. يعتمد التقدم على مستواك عند البدء وعلى تدريبك، ولا نعد أبدًا بدرجات أو نتائج.

المستويات المناسبة

تناسب ⁦C++⁩ الطلاب من المستوى المبتدئ إلى المتوسط. وهي تتطلب تفاصيل أكثر من Python، لذا تعتمد السرعة على نقطة بدايتك.

  • المستوى: مبتدئ

    ⁦C++⁩ لغتك الأولى

    لم تبرمج من قبل. تبدأ بترجمة برنامجك الأول وتتقدم بهدوء، مع تدريب وافر على كل موضوع.

  • المستوى: من مبتدئ إلى متوسط

    ⁦C++⁩ لغتك الثانية

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

  • المستوى: متوسط

    دعم أثناء مقرر جامعي

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

ماذا تتعلم بعد ذلك

تقود ⁦C++⁩ بطبيعتها إلى مقررات علوم الحاسوب التي تبنيها البرامج الجامعية عليها.

  • البرمجة كائنية التوجه

    التصميم بالأصناف والوراثة والواجهات، ورسم UML قبل كتابة الشيفرة.

  • برمجة Python

    لغة ثانية أقصر للبرمجة النصية والتجارب السريعة.

  • دورات البرمجة

    قارن ⁦C++⁩ بـPython وJavaScript وبقية دورات البرمجة.

أدلة مجانية

معلم ⁦C++⁩

يدرّس حصص ⁦C++⁩ معلمو البرمجة أدناه. يُنشر كل ملف بموافقة المعلم. عندما تتواصل معنا، نقترح معلمًا يناسب مستواك ومقررك ومواعيدك.

  • صورة Ali Sher Abbasi، معلم في My Subject Hub

    Ali Sher Abbasi

    معلم في ماي سبجكت هب

    • BS (Computer Science)
    • DSA certification
    الخبرة في التدريس
    5 سنوات
    لغات التدريس
    الإنجليزية والأوردية
    علوم الحاسوب والبرمجة
    • أساسيات البرمجة
    • ⁦C++⁩ وJava
    • JavaScript وتطوير الويب
    • البرمجة كائنية التوجه
    • هياكل البيانات والخوارزميات
    • علوم الحاسوب المتقدمة
    • أساسيات الأمن السيبراني
    • الإرشاد في مشاريع التخرج
    المواد المدرسية والجامعية
    • الرياضيات
    • العلوم والفيزياء والكيمياء والأحياء
    • اللغة الإنجليزية
    • اللغة الأردية
    أسلوب التدريس
    أسلوب ودود وصبور. مهام وواجبات يومية واختبارات قصيرة لمتابعة التقدّم، ولا ننتقل إلى الموضوع التالي إلا بعد أن يتّضح السابق تمامًا.
    المناهج والمجالس التعليمية
    All curricula and boards
    التوفر عبر الإنترنت
    في أي وقت يناسب الطالب
عرض جميع المعلمين

رسوم الدورة

Python وJavaScript و⁦C++⁩ وJava وC. رسوم شهرية ثابتة لكل دورة، مهما كان عدد الحصص في الأسبوع.

دولي
⁦$60⁩شهريًا
السعودية
⁦SAR 180⁩شهريًايشمل خصم 20% للطلاب في السعودية

تتبع البرمجة كائنية التوجه وهياكل البيانات والخوارزميات والأمن السيبراني الخطط الشهرية، مثل المواد الأكاديمية.

اطّلع على جميع الرسوم والخطط

أسئلة عن دورة ⁦C++⁩

هل تدرّسون لغة C إلى جانب ⁦C++⁩؟

نعم. تبدأ مقررات كثيرة بلغة C قبل ⁦C++⁩. يستطيع المعلم تدريس صياغة C ومؤشراتها ومصفوفاتها، ويوضح العادات التي تتغير عند الانتقال إلى ⁦C++⁩.

هل ⁦C++⁩ أصعب من Python؟

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

قارن بدورة Python

ما إصدار ⁦C++⁩ الذي تدرّسونه؟

⁦C++⁩ الحديثة (⁦C++11⁩ وما بعدها)، مثل ⁦auto⁩ وحلقات ⁦for⁩ على النطاقات و⁦std::vector⁩ و⁦std::string⁩. وإن كان مقررك يستخدم أسلوبًا أقدم، مثل مصفوفات ونصوص لغة C، فالمعلم يدرّسه أيضًا.

ما المترجم أو بيئة التطوير التي سأستخدمها؟

ما يستخدمه مقررك، مثل Visual Studio أو Code::Blocks أو Dev-C++ أو g++ من سطر الأوامر. وإن لم يكن لديك شرط، يساعدك المعلم على تثبيت مترجم مجاني في الدرس الأول.

هل تُعدّني هذه الدورة لمقرر هياكل البيانات والخوارزميات؟

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

اقرأ عن دورة هياكل البيانات والخوارزميات

كم يستغرق تعلّم ⁦C++⁩؟

لا توجد مدة ثابتة. يعتمد ذلك على نقطة بدايتك، وعدد دروسك في الأسبوع، وما يتطلبه مقررك. يقترح المعلم خطة بعد الحصة المجانية. الرسوم ⁦$60⁩ شهريًا (⁦SAR 180⁩ في السعودية)، مهما كان عدد الحصص في الأسبوع.

اطّلع على الرسوم والخطط

احجز حصة ⁦C++⁩ تعريفية مجانية

تعرّف على المعلم، وترجما معًا برنامج ⁦C++⁩ قصيرًا، واتفقا على نقطة البداية. املأ النموذج وسنرتّب موعدًا.

ماذا يحدث بعد ذلك

  1. نرد خلال 24 ساعة عبر واتساب أو البريد الإلكتروني.
  2. تتفق مع المعلم على موعد الحصة المجانية ومدتها 30 دقيقة.
  3. في الحصة يتعرّف المعلم على مستواك، وتكتبان معًا قليلًا من الشيفرة، وتحصل على اقتراح لنقطة البداية.
  4. لا التزام بالاستمرار بعد الحصة المجانية.

أخبرنا عن الطالب

المطلوب فقط الاسم ومستوى الطالب ووسيلة واحدة للتواصل. كل ما عدا ذلك اختياري.

عن الطالب
كيف نتواصل معك

رقم تواصل مع رمز الدولة، أو بريد إلكتروني، أو كلاهما. نحتاج إلى واحد على الأقل للرد، ويكفي البريد الإلكتروني إن كنت تفضّل عدم مشاركة رقمك.

تفضيلات الحصص(اختياري)
المعلم المفضّل(اختياري)

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