C++ نظرة عامة على اللغة

هل أنا جاهز لتعلم لغة C++؟

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

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

الآن عليك معرفة أن تعلّم لغة برمجة و الخوارزميات في وقت واحد أمر سيتعبك جداً و سيؤخرك في التعلم لأن أي كود جديد يمر معك ستتعب كثيراً حتى تتمكن من فهمه بنفسك, و أي مشكلة تواجهها في الكود ستتعب كثيراً في حلها و قد لا تتمكن أصلاً من حلها لأنك قد لا تعرف سببها.

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

تعلم الخوارزميات »

ما هي لغة C++

C++ تكتب سي بلاس بلاس باللغة العربية و هي لغة برمجة تجميعية ( Compiled ) و كائنية ( Object Oriented ) تضم العديد من مميزات لغات البرمجة عالية المستوى ( High Level ) و منخفضة المستوى ( Low Level ) و هذا يعني أنك قادر على فعل ما تشاء بها.
هذه اللغة الرائعة مصممة لتعمل على جميع أنظمة التشغيل المعروفة مثل ويندوز, ماك, لينكس, إندرويد إلخ.. و هي تعتبر من أقوى و أشهر لغات البرمجة على الإطلاق و يطلق عليها "أم اللغات" نظراً لأنها لغة قوية و موجودة منذ زمن طويل.

تم بناء هذه اللغة بالأساس كتطوير للغة C من قبل Bjarne Stroustrup أثناء عمله في مختبرات Bell لتكون أطروحته في رسالة الدكتورا عام 1979.
من ذلك الحين و حتى وقتنا الحالي تم تطوير هذه اللغة بشكل مستمر و اخر إصدار رسمي لها هو C++ 17.

لا يوجد شعار رسمي للغة C++ و لكن في العادة و عند البحث عن دورات لتعلمها أونلاين فإنك تجدهم يستخدموا شعار يشبه التالي.

ماذا يمكنني ان أطور بلغة C++

لغة C++ تعتبر لغة عامة الهدف ( General Purpose ) مما يعني انها قادرة على بناء أي برنامج.
القوة الحقيقة لها تتجلى في المشاريع و البرامج الكبيرة مثل:

  • بناء و تطوير انظمة التشغيل ومن اشهر انظمة التشغيل المبنية بهذه اللغة Windows, Linux, MacOS, Android.
  • بناء و تطوير البرامج الكبيرة مثل برامج أدوبي ( مثل Photoshop و Premier ) و المتصفح Firefox.
  • بناء و تطوير الالعاب و من أشهر الألعاب التي طورت بهذه اللغة Counter Strike, MacOSDoom, Warcraft.

مميزات لغة C++ بالنسبة للمطورين

  1. لها شعبية هائلة و هناك الكثير من المراجع لمن يريد تعلمها.
  2. القدرة على التحكم باستخدام الذاكرة بشكل كبير.
  3. خفيفة و سريعة وتستهلك موارد نظام أقل مقارنة بلغات أخرى مثل جافا و بايثون.
  4. بالامكان تحويل كود مكتوب بلغة C لكود بلغة C++ بسهولة.

مميزات لغة C++ عن باقي لغات البرمجة

  1. مفتوحة المصدر
    لن تدفع أي مبلغ لتعمل على لغة C++, فهي مصدر مفتوح و مجانية و ستبقى مجانية مدى الحياة.

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

  3. البساطة
    تعلمها سهل جداً بعد أن تفهم برمجة الكائنات.

  4. سرعة الترجمة
    تتم ترجمة لغة C++ إلى أوامر يفهمها الجهاز بشكل سريع جداً.

  5. لغة كائنية ( Object Oriented )
    مع أن لغة C++ صممت لتكون قريبة من عتاد الجهاز و قريبة للغات منخفضة المستوى إلا أنها تتيح لمستخدمها بناء الكلاسات و التعامل معها بطرق منهجيات البرمجة الكائنية ( OOP ) مثل الوراثة و تعدد الأشكال و غيرها من المبادئ التي ستتعلمها لاحقاً في الدورة.

  6. متعددة النماذج
    تسمح لغة C++ لمستخدمها باختيار الطريقة المناسبة له لكتابة الكود البرمجي من بين عدة نماذج مختلفة مثل النموذج الهيكلي ( Structural ) الشبيهة بلغة C و النموذج الكائني ( Object Oriented ) الشبيه بلغة C++.

  7. الدعم الكبير
    لغة C++ من اللغات القديمة نسبيا و المنتشرة بشكل كبير مما جعل منها لغة ذات شعبية كبيرة و مصادر تعلم مختلفة و متعددة و دعم كبير من قبل مجتمع المطورين.

لمن تم إعداد هذا المرجع

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

في الدرس التالي سنرشدك لتحميل الأدوات التي سنستخدمها لبناء و تشغيل كود C++ على حاسوبك.

الدورات

أدوات مساعدة

الأقسام

دورات
مقالات أسئلة مشاريع كتب