🔰 المستوى الثاني: المتحكمات (Flow Control)
1️⃣ الجمل الشرطية (Conditionals)
• جمل if, else if, else
• استخدام switch مع جمل متعددة الخيارات
• التحقق من شروط معقدة باستخدام && و ||
2️⃣ الحلقات التكرارية (Loops)
• حلقة for
• حلقة while
• حلقة do-while
• استخدام break و continue للتحكم في تدفق الحلقات
3️⃣ الدوال (Functions)
• تعريف الدوال (functions)
• استدعاء الدوال وتمرير المعاملات (parameters)
• إرجاع القيم باستخدام return
• دوال بدون قيمة إرجاع (void)
4️⃣ المصفوفات (Arrays)
• تعريف المصفوفات الأحادية والثنائية
• الوصول إلى العناصر في المصفوفات
• التكرار عبر المصفوفات باستخدام الحلقات
1️⃣ الجمل الشرطية (Conditionals)
• جمل if, else if, else
• استخدام switch مع جمل متعددة الخيارات
• التحقق من شروط معقدة باستخدام && و ||
2️⃣ الحلقات التكرارية (Loops)
• حلقة for
• حلقة while
• حلقة do-while
• استخدام break و continue للتحكم في تدفق الحلقات
3️⃣ الدوال (Functions)
• تعريف الدوال (functions)
• استدعاء الدوال وتمرير المعاملات (parameters)
• إرجاع القيم باستخدام return
• دوال بدون قيمة إرجاع (void)
4️⃣ المصفوفات (Arrays)
• تعريف المصفوفات الأحادية والثنائية
• الوصول إلى العناصر في المصفوفات
• التكرار عبر المصفوفات باستخدام الحلقات
🔰 المستوى الثالث: التعمق في C++
1️⃣ المؤشرات (Pointers)
• تعريف المؤشرات واستخدامها
• الفرق بين المتغيرات والمؤشرات
• التعامل مع المؤشرات للمصفوفات والدوال
• المؤشرات والدوال (Pass by Reference)
2️⃣ المراجع (References)
• الفرق بين المراجع والمؤشرات
• كيفية استخدام المراجع في الدوال
• المراجع الثابتة (constant references)
3️⃣ الذاكرة الديناميكية (Dynamic Memory)
• الحجز باستخدام new و delete
• التعامل مع المصفوفات الديناميكية
• تسريب الذاكرة وكيفية تجنبه
4️⃣ الهياكل (Structures)
• تعريف الهياكل (struct)
• استخدام الهياكل لتخزين البيانات المركبة
• التعامل مع الهياكل في الدوال
5️⃣ الاتحادات (Unions)
• تعريف الاتحاد (union)
• الفرق بين الاتحاد والهياكل
• استخدام الاتحاد لتوفير الذاكرة
1️⃣ المؤشرات (Pointers)
• تعريف المؤشرات واستخدامها
• الفرق بين المتغيرات والمؤشرات
• التعامل مع المؤشرات للمصفوفات والدوال
• المؤشرات والدوال (Pass by Reference)
2️⃣ المراجع (References)
• الفرق بين المراجع والمؤشرات
• كيفية استخدام المراجع في الدوال
• المراجع الثابتة (constant references)
3️⃣ الذاكرة الديناميكية (Dynamic Memory)
• الحجز باستخدام new و delete
• التعامل مع المصفوفات الديناميكية
• تسريب الذاكرة وكيفية تجنبه
4️⃣ الهياكل (Structures)
• تعريف الهياكل (struct)
• استخدام الهياكل لتخزين البيانات المركبة
• التعامل مع الهياكل في الدوال
5️⃣ الاتحادات (Unions)
• تعريف الاتحاد (union)
• الفرق بين الاتحاد والهياكل
• استخدام الاتحاد لتوفير الذاكرة
🔰 المستوى الرابع: البرمجة الكائنية التوجه (OOP)
1️⃣ المفاهيم الأساسية للبرمجة الكائنية التوجه (OOP)
• ما هي البرمجة الكائنية التوجه؟
• التعريف بالفئات (classes) والكائنات (objects)
• كيفية تعريف وإنشاء الكائنات
2️⃣ المحددات (Access Modifiers)
• public, private, protected
•كيفية تحديد الوصول إلى الأعضاء في الفئة
3️⃣ البناء والمخرجات (Constructors and Destructors)
• تعريف البناة (constructors) وأنواعها
• استخدام المدمرات (destructors) للتنظيف
4️⃣ وراثة (Inheritance)
• مفهوم الوراثة وكيفية استخدامها
• وراثة الكائنات من فئات أخرى
• أنواع الوراثة: الوراثة العامة، الوراثة متعددة
5️⃣ التعددية الشكلية (Polymorphism)
• التعددية الشكلية وقت التنفيذ (Dynamic Polymorphism)
• استخدام الدوال الافتراضية (virtual functions)
• استخدام المؤشرات والفئات المجردة
6️⃣ التجريد (Abstraction)
• مفهوم التجريد في OOP
• الفئات المجردة (abstract classes) والدوال المجردة (pure virtual functions)
• تطبيق التجريد في البرامج
7️⃣ التغليف (Encapsulation)
• مفهوم التغليف وحماية البيانات
• استخدام الدوال العامة لتغيير القيم الخاصة
1️⃣ المفاهيم الأساسية للبرمجة الكائنية التوجه (OOP)
• ما هي البرمجة الكائنية التوجه؟
• التعريف بالفئات (classes) والكائنات (objects)
• كيفية تعريف وإنشاء الكائنات
2️⃣ المحددات (Access Modifiers)
• public, private, protected
•كيفية تحديد الوصول إلى الأعضاء في الفئة
3️⃣ البناء والمخرجات (Constructors and Destructors)
• تعريف البناة (constructors) وأنواعها
• استخدام المدمرات (destructors) للتنظيف
4️⃣ وراثة (Inheritance)
• مفهوم الوراثة وكيفية استخدامها
• وراثة الكائنات من فئات أخرى
• أنواع الوراثة: الوراثة العامة، الوراثة متعددة
5️⃣ التعددية الشكلية (Polymorphism)
• التعددية الشكلية وقت التنفيذ (Dynamic Polymorphism)
• استخدام الدوال الافتراضية (virtual functions)
• استخدام المؤشرات والفئات المجردة
6️⃣ التجريد (Abstraction)
• مفهوم التجريد في OOP
• الفئات المجردة (abstract classes) والدوال المجردة (pure virtual functions)
• تطبيق التجريد في البرامج
7️⃣ التغليف (Encapsulation)
• مفهوم التغليف وحماية البيانات
• استخدام الدوال العامة لتغيير القيم الخاصة
🔰 المستوى الخامس: تقنيات متقدمة
1️⃣ قوالب الدوال والفئات (Templates)
• تعريف القوالب (functions and classes templates)
• استخدام القوالب مع الأنواع المختلفة
• قوالب التخصصات (Template Specialization)
2️⃣ الاستثناءات (Exceptions)
• تعريف الاستثناءات في C++
• كيفية التعامل مع الاستثناءات باستخدام try, catch, throw
• كتابة الكود الآمن باستخدام الاستثناءات
3️⃣ الملفات (File Handling)
• قراءة وكتابة الملفات باستخدام fstream
• التعامل مع الملفات النصية والملفات الثنائية
• استخدام الدوال لإدارة الملفات (فتح، إغلاق، إضافة)
4️⃣ المكتبات القياسية (STL)
• ما هي مكتبة STL؟
• الحاويات الأساسية: vector, list, deque, map, set
• التعامل مع الحاويات: إضافة، حذف، الوصول
• التكرار عبر الحاويات باستخدام المكررات (iterators)
1️⃣ قوالب الدوال والفئات (Templates)
• تعريف القوالب (functions and classes templates)
• استخدام القوالب مع الأنواع المختلفة
• قوالب التخصصات (Template Specialization)
2️⃣ الاستثناءات (Exceptions)
• تعريف الاستثناءات في C++
• كيفية التعامل مع الاستثناءات باستخدام try, catch, throw
• كتابة الكود الآمن باستخدام الاستثناءات
3️⃣ الملفات (File Handling)
• قراءة وكتابة الملفات باستخدام fstream
• التعامل مع الملفات النصية والملفات الثنائية
• استخدام الدوال لإدارة الملفات (فتح، إغلاق، إضافة)
4️⃣ المكتبات القياسية (STL)
• ما هي مكتبة STL؟
• الحاويات الأساسية: vector, list, deque, map, set
• التعامل مع الحاويات: إضافة، حذف، الوصول
• التكرار عبر الحاويات باستخدام المكررات (iterators)
🔰 المستوى السادس: تحسين الكود وتطبيقات عملية
1️⃣ تحسين الأداء وإدارة الذاكرة
• استخدام الحجز الديناميكي بحذر
• تحسين الكود باستخدام المؤشرات الذكية (Smart Pointers)
• تحليل وتحسين الكود من حيث الذاكرة والأداء
2️⃣ تصميم البرمجيات
• المبادئ الأساسية لتصميم البرمجيات (مثل SOLID)
• استخدام الأنماط التصميمية (Design Patterns): Singleton, Factory, Observer
• تقسيم البرامج إلى وحدات (modular programming)
3️⃣ إعداد الكود للانتاج (Production Code)
• التعامل مع الأخطاء وإصلاح الأعطال
• كتابة اختبار وحدات (unit testing)
• استخدام أدوات إدارة الإصدارات (Git)
4️⃣ مشاريع عملية في C++
• تصميم برنامج لإدارة المكتبات
• تطبيق قاعدة بيانات باستخدام الفئات والهياكل
• مشروع لعبة بسيطة باستخدام C++ و SDL أو OpenGL
5️⃣ نصائح وموارد إضافية
• أفضل الممارسات في C++
• القراءة والبحث عن المشاريع مفتوحة المصدر
• المشاركة في المنتديات والمجتمعات التقنية
🤗 خاتمة ( للجادين في التعلم )
تعلم C++ يتطلب الوقت والممارسة المستمرة. من خلال اتباع هذا الفهرس التدريجي، يمكنك بناء أساس قوي وفهم عميق لهذه اللغة القوية، وفتح المجال لتطوير مهاراتك البرمجية بشكل متقدم.
1️⃣ تحسين الأداء وإدارة الذاكرة
• استخدام الحجز الديناميكي بحذر
• تحسين الكود باستخدام المؤشرات الذكية (Smart Pointers)
• تحليل وتحسين الكود من حيث الذاكرة والأداء
2️⃣ تصميم البرمجيات
• المبادئ الأساسية لتصميم البرمجيات (مثل SOLID)
• استخدام الأنماط التصميمية (Design Patterns): Singleton, Factory, Observer
• تقسيم البرامج إلى وحدات (modular programming)
3️⃣ إعداد الكود للانتاج (Production Code)
• التعامل مع الأخطاء وإصلاح الأعطال
• كتابة اختبار وحدات (unit testing)
• استخدام أدوات إدارة الإصدارات (Git)
4️⃣ مشاريع عملية في C++
• تصميم برنامج لإدارة المكتبات
• تطبيق قاعدة بيانات باستخدام الفئات والهياكل
• مشروع لعبة بسيطة باستخدام C++ و SDL أو OpenGL
5️⃣ نصائح وموارد إضافية
• أفضل الممارسات في C++
• القراءة والبحث عن المشاريع مفتوحة المصدر
• المشاركة في المنتديات والمجتمعات التقنية
🤗 خاتمة ( للجادين في التعلم )
تعلم C++ يتطلب الوقت والممارسة المستمرة. من خلال اتباع هذا الفهرس التدريجي، يمكنك بناء أساس قوي وفهم عميق لهذه اللغة القوية، وفتح المجال لتطوير مهاراتك البرمجية بشكل متقدم.
🧿 1. مقدمة إلى لغة C++ | الدرس الأول
📍 ما هي لغة C++؟
- C++ هي لغة برمجة عالية المستوى (High-Level Programming Language) تم تطويرها كامتداد للغة C.
- تُعتبر لغة C++ لغة برمجة متعددة الاستخدامات (General-Purpose Language)، مما يعني أنها يمكن أن تُستخدم لتطوير مجموعة واسعة من التطبيقات، بدءًا من البرامج البسيطة وحتى الأنظمة المعقدة.
- تدعم C++ أنماطًا متعددة من البرمجة، بما في ذلك:
■ البرمجة الإجرائية (Procedural Programming): التركيز على الإجراءات أو الدوال.
■البرمجة الكائنية (Object-Oriented Programming - OOP): التركيز على الكائنات والتفاعل بينها.
■ البرمجة العامة (Generic Programming): استخدام القوالب (Templates) لكتابة كود عام يعمل مع أنواع بيانات مختلفة.
📍 تاريخ اللغة وتطورها؟
- 1980:
بدأ تطوير لغة C++ على يد بيارن ستروستروب (Bjarne Stroustrup) في مختبرات بل (Bell Labs).
- 1983:
تم إطلاق الاسم C++، حيث يشير الرمز
- 1985:
تم إصدار أول نسخة تجارية من لغة C++.
- 1998:
تم اعتماد أول معيار قياسي للغة C++ (C++98) من قبل منظمة ISO.
- 2011:
تم إصدار معيار C++11 الذي أضاف العديد من الميزات الجديدة مثل المؤشرات الذكية (Smart Pointers) ودعم التزامن (Concurrency).
- 2020:
تم إصدار معيار C++20 الذي أضاف ميزات مثل النماذج (Concepts) والمكتبات الجديدة.
📍مميزات لغة C++
1. الأداء العالي:
- تُعتبر C++ واحدة من أسرع لغات البرمجة بسبب قربها من لغة الآلة (Low-Level Language) وقدرتها على التحكم المباشر في الذاكرة.
2. التحكم في الذاكرة:
- تتيح C++ للمبرمج التحكم الكامل في إدارة الذاكرة من خلال استخدام المؤشرات (Pointers) والذاكرة الديناميكية (Dynamic Memory).
3. البرمجة الكائنية (OOP):
- تدعم C++ مفاهيم البرمجة الكائنية مثل التغليف (Encapsulation)، الوراثة (Inheritance)، وتعدد الأشكال (Polymorphism)، مما يجعلها مناسبة لتطوير التطبيقات الكبيرة والمعقدة.
4. القوالب (Templates):
- تسمح القوالب بكتابة كود عام يعمل مع أنواع بيانات مختلفة، مما يزيد من مرونة اللغة.
5. المكتبات القياسية (STL):
- توفر C++ مكتبة قياسية غنية (Standard Template Library - STL) تحتوي على حاويات (Containers)، خوارزميات (Algorithms)، ومكررات (Iterators) لتسهيل عملية البرمجة.
6. التوافق مع لغة C:
- C++ متوافقة مع لغة C، مما يعني أن معظم كود C يمكن استخدامه مباشرة في برامج C++.
7. البرمجة المتوازية (Concurrency):
- تدعم C++ البرمجة المتوازية من خلال مكتبات مثل <thread> و<mutex>، مما يسمح بتطوير تطبيقات متعددة الخيوط (Multithreaded Applications).
8. المرونة:
- يمكن استخدام C++ في مجموعة واسعة من المجالات مثل تطوير الألعاب، أنظمة التشغيل، قواعد البيانات، التطبيقات العلمية، وغيرها.
9. المجتمع الكبير والدعم:
- تتمتع C++ بمجتمع كبير من المطورين، مما يعني وجود الكثير من الموارد التعليمية والأدوات والمكتبات المتاحة.
📍 ملخص الدرس الأول
- C++ هي لغة برمجة قوية ومتعددة الاستخدامات تُستخدم في تطوير التطبيقات عالية الأداء.
- تم تطويرها كامتداد للغة C، وتدعم أنماطًا متعددة من البرمجة مثل الإجرائية والكائنية.
- تتميز C++ بالأداء العالي، التحكم في الذاكرة، ودعم البرمجة الكائنية والقوالب.
- تُستخدم C++ في العديد من المجالات مثل تطوير الألعاب، أنظمة التشغيل، والتطبيقات العلمية.
#دورة_سي_بلس_بلس
#C_plus_plus
#الدرس_الأول_سي_بلس_بلس
#المستوى_الأول
✅ الرجاء متابعة قناتنا 👇
@artificial_AI_intelligence
📍 ما هي لغة C++؟
- C++ هي لغة برمجة عالية المستوى (High-Level Programming Language) تم تطويرها كامتداد للغة C.
- تُعتبر لغة C++ لغة برمجة متعددة الاستخدامات (General-Purpose Language)، مما يعني أنها يمكن أن تُستخدم لتطوير مجموعة واسعة من التطبيقات، بدءًا من البرامج البسيطة وحتى الأنظمة المعقدة.
- تدعم C++ أنماطًا متعددة من البرمجة، بما في ذلك:
■ البرمجة الإجرائية (Procedural Programming): التركيز على الإجراءات أو الدوال.
■البرمجة الكائنية (Object-Oriented Programming - OOP): التركيز على الكائنات والتفاعل بينها.
■ البرمجة العامة (Generic Programming): استخدام القوالب (Templates) لكتابة كود عام يعمل مع أنواع بيانات مختلفة.
📍 تاريخ اللغة وتطورها؟
- 1980:
بدأ تطوير لغة C++ على يد بيارن ستروستروب (Bjarne Stroustrup) في مختبرات بل (Bell Labs).
- 1983:
تم إطلاق الاسم C++، حيث يشير الرمز
++
إلى عملية الزيادة في لغة C، مما يعكس أن C++ هي تطوير للغة C.- 1985:
تم إصدار أول نسخة تجارية من لغة C++.
- 1998:
تم اعتماد أول معيار قياسي للغة C++ (C++98) من قبل منظمة ISO.
- 2011:
تم إصدار معيار C++11 الذي أضاف العديد من الميزات الجديدة مثل المؤشرات الذكية (Smart Pointers) ودعم التزامن (Concurrency).
- 2020:
تم إصدار معيار C++20 الذي أضاف ميزات مثل النماذج (Concepts) والمكتبات الجديدة.
📍مميزات لغة C++
1. الأداء العالي:
- تُعتبر C++ واحدة من أسرع لغات البرمجة بسبب قربها من لغة الآلة (Low-Level Language) وقدرتها على التحكم المباشر في الذاكرة.
2. التحكم في الذاكرة:
- تتيح C++ للمبرمج التحكم الكامل في إدارة الذاكرة من خلال استخدام المؤشرات (Pointers) والذاكرة الديناميكية (Dynamic Memory).
3. البرمجة الكائنية (OOP):
- تدعم C++ مفاهيم البرمجة الكائنية مثل التغليف (Encapsulation)، الوراثة (Inheritance)، وتعدد الأشكال (Polymorphism)، مما يجعلها مناسبة لتطوير التطبيقات الكبيرة والمعقدة.
4. القوالب (Templates):
- تسمح القوالب بكتابة كود عام يعمل مع أنواع بيانات مختلفة، مما يزيد من مرونة اللغة.
5. المكتبات القياسية (STL):
- توفر C++ مكتبة قياسية غنية (Standard Template Library - STL) تحتوي على حاويات (Containers)، خوارزميات (Algorithms)، ومكررات (Iterators) لتسهيل عملية البرمجة.
6. التوافق مع لغة C:
- C++ متوافقة مع لغة C، مما يعني أن معظم كود C يمكن استخدامه مباشرة في برامج C++.
7. البرمجة المتوازية (Concurrency):
- تدعم C++ البرمجة المتوازية من خلال مكتبات مثل <thread> و<mutex>، مما يسمح بتطوير تطبيقات متعددة الخيوط (Multithreaded Applications).
8. المرونة:
- يمكن استخدام C++ في مجموعة واسعة من المجالات مثل تطوير الألعاب، أنظمة التشغيل، قواعد البيانات، التطبيقات العلمية، وغيرها.
9. المجتمع الكبير والدعم:
- تتمتع C++ بمجتمع كبير من المطورين، مما يعني وجود الكثير من الموارد التعليمية والأدوات والمكتبات المتاحة.
📍 ملخص الدرس الأول
- C++ هي لغة برمجة قوية ومتعددة الاستخدامات تُستخدم في تطوير التطبيقات عالية الأداء.
- تم تطويرها كامتداد للغة C، وتدعم أنماطًا متعددة من البرمجة مثل الإجرائية والكائنية.
- تتميز C++ بالأداء العالي، التحكم في الذاكرة، ودعم البرمجة الكائنية والقوالب.
- تُستخدم C++ في العديد من المجالات مثل تطوير الألعاب، أنظمة التشغيل، والتطبيقات العلمية.
#دورة_سي_بلس_بلس
#C_plus_plus
#الدرس_الأول_سي_بلس_بلس
#المستوى_الأول
✅ الرجاء متابعة قناتنا 👇
@artificial_AI_intelligence
💥العملاق الصيني DeepSeek بديل ChatGPT ومنافس Open 💎 Ai بقوة
- مجاني 100% ✔
- يدعم الصور والمحادثة بدون حدود ✔
✅ الرابط 👇
https://chat.deepseek.com
✅ الرجاء متابعة قناتنا 👇
@artificial_AI_intelligence
- مجاني 100% ✔
- يدعم الصور والمحادثة بدون حدود ✔
✅ الرابط 👇
https://chat.deepseek.com
✅ الرجاء متابعة قناتنا 👇
@artificial_AI_intelligence
Forwarded from 📙 المكتبة العامة 📚
Please open Telegram to view this post
VIEW IN TELEGRAM
1. الفرق بين C++ و C
📍 أوجه التشابه:
■ كلتا اللغتين C و C++ لغات برمجة عالية الأداء وتُستخدمان في تطوير التطبيقات التي تتطلب تحكمًا دقيقًا في الموارد.
■ C++ هي امتداد للغة C، مما يعني أن معظم كود C يمكن استخدامه مباشرة في C++.
📍 أوجه الاختلاف:
🔸️الميزة - برمجة الكائنية (OOP)
• لغة C : لا تدعم البرمجة الكائنية
• لغة ++C : تدعم البرمجة الكائنية (OOP) بشكل كامل.
🔸️الميزة - القوالب (Templates)
• لغة C : لا تدعم القوالب
• لغة ++C : تدعم القوالب لكتابة كود عام.
🔸️الميزة - إدارة الذاكرة
• لغة C : يدوية بالكامل (يجب تحرير الذاكرة يدويًا).
• لغة ++C : يدوية مع إمكانية استخدام المؤشرات الذكية (Smart Pointers) لإدارة الذاكرة تلقائيًا.
🔸️الميزة - المكتبات القياسية (STL)
• لغة C : مكتبات قياسية محدودة
• لغة ++C : مكتبة قياسية غنية (STL) تحتوي على حاويات وخوارزميات
🔸️الميزة - التعامل مع السلاسل النصية
• لغة C : يتم استخدام المصفوفات (char[]).
• لغة ++C : يدعم نوع std::string للتعامل مع النصوص.
🔸️الميزة - الاستخدام الشائع
• لغة C : أنظمة التشغيل، الأنظمة المدمجة.
• لغة ++C : تطبيقات الألعاب، البرامج المعقدة، التطبيقات العلمية.
📍 أوجه التشابه:
■ كلتا اللغتين C و C++ لغات برمجة عالية الأداء وتُستخدمان في تطوير التطبيقات التي تتطلب تحكمًا دقيقًا في الموارد.
■ C++ هي امتداد للغة C، مما يعني أن معظم كود C يمكن استخدامه مباشرة في C++.
📍 أوجه الاختلاف:
🔸️الميزة - برمجة الكائنية (OOP)
• لغة C : لا تدعم البرمجة الكائنية
• لغة ++C : تدعم البرمجة الكائنية (OOP) بشكل كامل.
🔸️الميزة - القوالب (Templates)
• لغة C : لا تدعم القوالب
• لغة ++C : تدعم القوالب لكتابة كود عام.
🔸️الميزة - إدارة الذاكرة
• لغة C : يدوية بالكامل (يجب تحرير الذاكرة يدويًا).
• لغة ++C : يدوية مع إمكانية استخدام المؤشرات الذكية (Smart Pointers) لإدارة الذاكرة تلقائيًا.
🔸️الميزة - المكتبات القياسية (STL)
• لغة C : مكتبات قياسية محدودة
• لغة ++C : مكتبة قياسية غنية (STL) تحتوي على حاويات وخوارزميات
🔸️الميزة - التعامل مع السلاسل النصية
• لغة C : يتم استخدام المصفوفات (char[]).
• لغة ++C : يدعم نوع std::string للتعامل مع النصوص.
🔸️الميزة - الاستخدام الشائع
• لغة C : أنظمة التشغيل، الأنظمة المدمجة.
• لغة ++C : تطبيقات الألعاب، البرامج المعقدة، التطبيقات العلمية.
2. الفرق بين C++ و Python
📍 أوجه التشابه:
■ كلتا اللغتين تدعمان البرمجة الكائنية (OOP).
■ يمكن استخدامهما في تطوير تطبيقات متنوعة.
📍 أوجه الاختلاف:
🔸️الميزة - نوع اللغة
• لغة Python : لغة مكتوبة بشكل ديناميكي (Dynamically Typed).
• لغة ++C : لغة مكتوبة بشكل ثابت (Statically Typed).
🔸️الميزة - الأداء
• لغة Python: أبطأ من C++ بسبب تفسير الكود (Interpreted).
• لغة ++C : عالي الأداء (قريبة من لغة الآلة).
🔸️الميزة - إدارة الذاكرة
• لغة Python : تلقائية (Garbage Collection)
• لغة ++C : يدوية مع إمكانية استخدام المؤشرات الذكية.
🔸️الميزة - المكتبات القياسية (STL)
• لغة Python: مكتبة قياسية كبيرة مع دعم قوي للبيانات العلمية والذكاء الاصطناعي.
• لغة ++C : مكتبة قياسية غنية (STL).
🔸️الميزة - سهولة التعلم
• لغة Python: أسهل في التعلم بسبب البساطة والتركيب الواضح.
• لغة ++C : أكثر تعقيدًا بسبب التحكم في الذاكرة والتركيب المعقد.
🔸️الميزة - الاستخدام الشائع
• لغة Python :تطوير الويب، تحليل البيانات، الذكاء الاصطناعي، البرامج النصية
• لغة ++C : تطبيقات الألعاب، الأنظمة المدمجة، التطبيقات عالية الأداء.
🔸️الميزة - التنفيذ
• لغة Python :يتم تفسير الكود (Interpreted).
• لغة ++C : يتم تجميع الكود (Compiled).
📍 أوجه التشابه:
■ كلتا اللغتين تدعمان البرمجة الكائنية (OOP).
■ يمكن استخدامهما في تطوير تطبيقات متنوعة.
📍 أوجه الاختلاف:
🔸️الميزة - نوع اللغة
• لغة Python : لغة مكتوبة بشكل ديناميكي (Dynamically Typed).
• لغة ++C : لغة مكتوبة بشكل ثابت (Statically Typed).
🔸️الميزة - الأداء
• لغة Python: أبطأ من C++ بسبب تفسير الكود (Interpreted).
• لغة ++C : عالي الأداء (قريبة من لغة الآلة).
🔸️الميزة - إدارة الذاكرة
• لغة Python : تلقائية (Garbage Collection)
• لغة ++C : يدوية مع إمكانية استخدام المؤشرات الذكية.
🔸️الميزة - المكتبات القياسية (STL)
• لغة Python: مكتبة قياسية كبيرة مع دعم قوي للبيانات العلمية والذكاء الاصطناعي.
• لغة ++C : مكتبة قياسية غنية (STL).
🔸️الميزة - سهولة التعلم
• لغة Python: أسهل في التعلم بسبب البساطة والتركيب الواضح.
• لغة ++C : أكثر تعقيدًا بسبب التحكم في الذاكرة والتركيب المعقد.
🔸️الميزة - الاستخدام الشائع
• لغة Python :تطوير الويب، تحليل البيانات، الذكاء الاصطناعي، البرامج النصية
• لغة ++C : تطبيقات الألعاب، الأنظمة المدمجة، التطبيقات عالية الأداء.
🔸️الميزة - التنفيذ
• لغة Python :يتم تفسير الكود (Interpreted).
• لغة ++C : يتم تجميع الكود (Compiled).
3. مقارنة عامة بين C++ و C و Python
🔸️الميزة - نوع اللغة
• لغة C : لغة إجرائية (Procedural).
• لغة Python : لغة كائنية ونصية (OOP & Scripting).
• لغة ++C : لغة إجرائية وكائنية (Procedural & OOP).
🔸️الميزة - الأداء
• لغة C : عالي الأداء
• لغة Python : أبطأ من C و C++
• لغة ++C : عالي الأداء
🔸️الميزة - إدارة الذاكرة
• لغة C : يدوية.
• لغة Python : تلقائية (Garbage Collection).
• لغة ++C : يدوية مع دعم المؤشرات الذكية.
🔸️الميزة - سهولة التعلم
• لغة C : متوسطة
• لغة Python : سهلة للغاية
• لغة ++C : أكثر تعقيدًا من C.
🔸️الميزة - الاستخدام الشائع
• لغة C : أنظمة التشغيل، الأنظمة المدمجة.
• لغة Python : تطوير الويب، تحليل البيانات، الذكاء الاصطناعي
• لغة ++C : تطبيقات الألعاب، التطبيقات المعقدة.
🔸️الميزة - التنفيذ
• لغة C : يتم تجميع الكود (Compiled).
• لغة Python : يتم تفسير الكود (Interpreted).
• لغة ++C : يتم تجميع الكود (Compiled)
🔸️الميزة - نوع اللغة
• لغة C : لغة إجرائية (Procedural).
• لغة Python : لغة كائنية ونصية (OOP & Scripting).
• لغة ++C : لغة إجرائية وكائنية (Procedural & OOP).
🔸️الميزة - الأداء
• لغة C : عالي الأداء
• لغة Python : أبطأ من C و C++
• لغة ++C : عالي الأداء
🔸️الميزة - إدارة الذاكرة
• لغة C : يدوية.
• لغة Python : تلقائية (Garbage Collection).
• لغة ++C : يدوية مع دعم المؤشرات الذكية.
🔸️الميزة - سهولة التعلم
• لغة C : متوسطة
• لغة Python : سهلة للغاية
• لغة ++C : أكثر تعقيدًا من C.
🔸️الميزة - الاستخدام الشائع
• لغة C : أنظمة التشغيل، الأنظمة المدمجة.
• لغة Python : تطوير الويب، تحليل البيانات، الذكاء الاصطناعي
• لغة ++C : تطبيقات الألعاب، التطبيقات المعقدة.
🔸️الميزة - التنفيذ
• لغة C : يتم تجميع الكود (Compiled).
• لغة Python : يتم تفسير الكود (Interpreted).
• لغة ++C : يتم تجميع الكود (Compiled)
4. متى نستخدم كل لغة؟
🔸️ لغة C:
• مثالية لتطوير أنظمة التشغيل، الأنظمة المدمجة، والتطبيقات التي تتطلب تحكمًا دقيقًا في الموارد.
• مثال: نواة لينكس (Linux Kernel)، أنظمة التحكم في السيارات.
🔸️ لغة C++:
• مثالية لتطوير التطبيقات عالية الأداء مثل الألعاب، المحاكاة العلمية، والتطبيقات المعقدة.
• مثال: محركات الألعاب (Unreal Engine)، برامج التصميم بمساعدة الحاسوب (CAD).
🔸️ لغة Python:
• مثالية لتطوير تطبيقات الويب، تحليل البيانات، الذكاء الاصطناعي، والبرامج النصية.
• مثال: تطبيقات الويب (Django, Flask)، تحليل البيانات (Pandas, NumPy)، الذكاء الاصطناعي (TensorFlow, PyTorch).
5. الخلاصة العامة
• C و C++ لغات قوية للأداء العالي والتحكم في الموارد، لكن C++ أكثر تطورًا بسبب دعمها للبرمجة الكائنية والقوالب.
• Python لغة سهلة التعلم وسريعة التطوير، لكنها أقل أداءً من C و C++.
•اختيار اللغة يعتمد على طبيعة المشروع:
- إذا كنت بحاجة إلى أداء عالي وتحكم في الموارد، اختر C أو C++.
- إذا كنت بحاجة إلى تطوير سريع وسهولة في التعلم، اختر Python.
#دورة_سي_بلس_بلس
#C_plus_plus
#الدرس_الثاني_سي_بلس_بلس
#المستوى_الأول
✅ الرجاء متابعة قناتنا 👇
@artificial_AI_intelligence
🤗 اذا إستفدت من الدرس لا تنسى الدعاء لنا 🤲
🔸️ لغة C:
• مثالية لتطوير أنظمة التشغيل، الأنظمة المدمجة، والتطبيقات التي تتطلب تحكمًا دقيقًا في الموارد.
• مثال: نواة لينكس (Linux Kernel)، أنظمة التحكم في السيارات.
🔸️ لغة C++:
• مثالية لتطوير التطبيقات عالية الأداء مثل الألعاب، المحاكاة العلمية، والتطبيقات المعقدة.
• مثال: محركات الألعاب (Unreal Engine)، برامج التصميم بمساعدة الحاسوب (CAD).
🔸️ لغة Python:
• مثالية لتطوير تطبيقات الويب، تحليل البيانات، الذكاء الاصطناعي، والبرامج النصية.
• مثال: تطبيقات الويب (Django, Flask)، تحليل البيانات (Pandas, NumPy)، الذكاء الاصطناعي (TensorFlow, PyTorch).
5. الخلاصة العامة
• C و C++ لغات قوية للأداء العالي والتحكم في الموارد، لكن C++ أكثر تطورًا بسبب دعمها للبرمجة الكائنية والقوالب.
• Python لغة سهلة التعلم وسريعة التطوير، لكنها أقل أداءً من C و C++.
•اختيار اللغة يعتمد على طبيعة المشروع:
- إذا كنت بحاجة إلى أداء عالي وتحكم في الموارد، اختر C أو C++.
- إذا كنت بحاجة إلى تطوير سريع وسهولة في التعلم، اختر Python.
#دورة_سي_بلس_بلس
#C_plus_plus
#الدرس_الثاني_سي_بلس_بلس
#المستوى_الأول
✅ الرجاء متابعة قناتنا 👇
@artificial_AI_intelligence
🤗 اذا إستفدت من الدرس لا تنسى الدعاء لنا 🤲
1. تثبيت Visual Studio
🔸️ ما هو Visual Studio؟
• يعتبر Visual Studio بيئة تطوير متكاملة (IDE) من شركة Microsoft، يدعم العديد من لغات البرمجة بما في ذلك C++.
• يتميز بواجهة مستخدم قوية وأدوات متقدمة للتصحيح وإدارة المشاريع.
✅ خطوات التثبيت:
1️⃣ تحميل Visual Studio:
• انتقل إلى الموقع الرسمي لـ Visual Studio.
• اختر الإصدار المناسب (Community مجاني للمطورين الأفراد).
2️⃣ بدء التثبيت:
• بعد تنزيل المثبت، قم بتشغيله.
• اختر Workloads وحدد Desktop development with C++ (تطوير تطبيقات سطح المكتب باستخدام C++).
3️⃣ تثبيت المكونات الإضافية:
■ تأكد من تحديد المكونات التالية:
• MSVC v142 - VS 2019 C++ x64/x86 build tools (أدوات بناء C++).
• Windows 10 SDK (للتطوير على نظام Windows).
• C++ CMake tools for Windows (إذا كنت ستستخدم CMake).
4️⃣ إكمال التثبيت:
• اضغط على Install وانتظر حتى تكتمل العملية.
• بعد الانتهاء، أعد تشغيل الجهاز إذا طُلب منك ذلك.
5️⃣ إنشاء مشروع جديد:
• افتح Visual Studio.
• اختر Create a new project.
• اختر Console App (تطبيق Console) وحدد C++ كلغة.
• قم بتسمية المشروع واختيار مكان الحفظ.
6️⃣ كتابة وتشغيل البرنامج:
• اكتب الكود التالي في ملف main.cpp
• اضغط على Ctrl + F5 لتشغيل البرنامج دون تصحيح، أو F5 للتشغيل مع التصحيح
🔸️ ما هو Visual Studio؟
• يعتبر Visual Studio بيئة تطوير متكاملة (IDE) من شركة Microsoft، يدعم العديد من لغات البرمجة بما في ذلك C++.
• يتميز بواجهة مستخدم قوية وأدوات متقدمة للتصحيح وإدارة المشاريع.
✅ خطوات التثبيت:
1️⃣ تحميل Visual Studio:
• انتقل إلى الموقع الرسمي لـ Visual Studio.
• اختر الإصدار المناسب (Community مجاني للمطورين الأفراد).
2️⃣ بدء التثبيت:
• بعد تنزيل المثبت، قم بتشغيله.
• اختر Workloads وحدد Desktop development with C++ (تطوير تطبيقات سطح المكتب باستخدام C++).
3️⃣ تثبيت المكونات الإضافية:
■ تأكد من تحديد المكونات التالية:
• MSVC v142 - VS 2019 C++ x64/x86 build tools (أدوات بناء C++).
• Windows 10 SDK (للتطوير على نظام Windows).
• C++ CMake tools for Windows (إذا كنت ستستخدم CMake).
4️⃣ إكمال التثبيت:
• اضغط على Install وانتظر حتى تكتمل العملية.
• بعد الانتهاء، أعد تشغيل الجهاز إذا طُلب منك ذلك.
5️⃣ إنشاء مشروع جديد:
• افتح Visual Studio.
• اختر Create a new project.
• اختر Console App (تطبيق Console) وحدد C++ كلغة.
• قم بتسمية المشروع واختيار مكان الحفظ.
6️⃣ كتابة وتشغيل البرنامج:
• اكتب الكود التالي في ملف main.cpp
#include <iostream>
using namespace std;
int main() {
cout << "Hello, World!" << endl;
return 0;
}
• اضغط على Ctrl + F5 لتشغيل البرنامج دون تصحيح، أو F5 للتشغيل مع التصحيح
2. تثبيت Code::Blocks
🔸️ ما هو Code::Blocks؟
• يعتبر Code::Blocks بيئة تطوير متكاملة (IDE) مفتوحة المصدر تدعم لغات متعددة بما في ذلك C++.
• يتميز بكونه خفيف الوزن وسهل الاستخدام.
✅ خطوات التثبيت:
1️⃣ تحميل Code::Blocks:
• انتقل إلى الموقع الرسمي لـ Code::Blocks.
• اختر الإصدار المناسب لنظام التشغيل الخاص بك (Windows، Linux، أو macOS).
2️⃣ تثبيت Code::Blocks:
• بعد تنزيل المثبت، قم بتشغيله.
• اتبع الخطوات التالية:
■ اختر اللغة (English).
■ وافق على شروط الترخيص.
■ اختر المكونات التي تريد تثبيتها (يفضل ترك الخيارات الافتراضية).
■ اختر مكان التثبيت (يفضل تركه كما هو).
3️⃣ تثبيت المترجم (Compiler):
• إذا كنت تستخدم Windows، قم بتنزيل MinGW (مترجم C++ لنظام Windows).
• انتقل إلى MinGW وقم بتنزيل المثبت.
• بعد التثبيت، تأكد من إضافة مسار المترجم إلى متغيرات البيئة (Environment Variables):
■ ابحث عن Edit the system environment variables في قائمة ابدأ.
■ اضغط على Environment Variables.
■ في قسم System variables، ابحث عن Path واضغط على Edit.
■ أضف المسار إلى مجلد bin داخل مجلد MinGW (مثال: C:\MinGW\bin).
4️⃣ تكوين Code::Blocks لاستخدام المترجم:
• افتح Code::Blocks.
• انتقل إلى Settings > Compiler.
• في علامة التبويب Selected compiler، اختر GNU GCC Compiler.
• اضغط على Toolchain executables وتأكد من أن المسار يشير إلى مجلد bin داخل MinGW
5️⃣ إنشاء مشروع جديد:
• اختر File > New > Project.
• اختر Console Application واضغط على Go.
• اختر C++ كلغة.
• قم بتسمية المشروع واختيار مكان الحفظ.
6️⃣ كتابة وتشغيل البرنامج:
• اكتب الكود التالي في ملف main.cpp
• اضغط على F9 لبناء وتشغيل البرنامج.
3. مقارنة بين Visual Studio و Code::Blocks
🔸️ الميزة : التعقيد
• برنامج Visual Studio : أكثر تعقيدًا مع واجهة غنية بالميزات.
• برنامج Code::Blocks : أبسط وأخف وزنًا.
🔸️ الميزة : الدعم
• برنامج Visual Studio : يدعم العديد من اللغات والمنصات.
• برنامج Code::Blocks : يركز على C/C++ بشكل أساسي.
🔸️ الميزة : الأداء
• برنامج Visual Studio : يتطلب موارد نظام أعلى.
• برنامج Code::Blocks : خفيف الوزن ويعمل بسلاسة على الأجهزة الضعيفة.
🔸️ الميزة : التكلفة
• برنامج Visual Studio : المجتمع Community Edition مجاني
• برنامج Code::Blocks : مفتوح المصدر ومجاني بالكامل.
🔸️ الميزة : الإستخدام الشائع
• برنامج Visual Studio : مشاريع كبيرة ومعقدة.
• برنامج Code::Blocks : مشاريع صغيرة إلى متوسطة الحجم.
4. الخلاصة العامة
• يعتبر Visual Studio هو الخيار الأفضل للمشاريع الكبيرة والمعقدة، خاصة إذا كنت تعمل على نظام Windows.
• بينما يعتبر Code::Blocks هو خيار رائع للمبتدئين أو للمشاريع الصغيرة، وهو يعمل على أنظمة متعددة.
#دورة_سي_بلس_بلس
#C_plus_plus
#الدرس_الثالث_سي_بلس_بلس
#المستوى_الأول
✅ الرجاء متابعة قناتنا 👇
@artificial_AI_intelligence
🤗 اذا إستفدت من الدرس لا تنسى الدعاء لنا 🤲
🔸️ ما هو Code::Blocks؟
• يعتبر Code::Blocks بيئة تطوير متكاملة (IDE) مفتوحة المصدر تدعم لغات متعددة بما في ذلك C++.
• يتميز بكونه خفيف الوزن وسهل الاستخدام.
✅ خطوات التثبيت:
1️⃣ تحميل Code::Blocks:
• انتقل إلى الموقع الرسمي لـ Code::Blocks.
• اختر الإصدار المناسب لنظام التشغيل الخاص بك (Windows، Linux، أو macOS).
2️⃣ تثبيت Code::Blocks:
• بعد تنزيل المثبت، قم بتشغيله.
• اتبع الخطوات التالية:
■ اختر اللغة (English).
■ وافق على شروط الترخيص.
■ اختر المكونات التي تريد تثبيتها (يفضل ترك الخيارات الافتراضية).
■ اختر مكان التثبيت (يفضل تركه كما هو).
3️⃣ تثبيت المترجم (Compiler):
• إذا كنت تستخدم Windows، قم بتنزيل MinGW (مترجم C++ لنظام Windows).
• انتقل إلى MinGW وقم بتنزيل المثبت.
• بعد التثبيت، تأكد من إضافة مسار المترجم إلى متغيرات البيئة (Environment Variables):
■ ابحث عن Edit the system environment variables في قائمة ابدأ.
■ اضغط على Environment Variables.
■ في قسم System variables، ابحث عن Path واضغط على Edit.
■ أضف المسار إلى مجلد bin داخل مجلد MinGW (مثال: C:\MinGW\bin).
4️⃣ تكوين Code::Blocks لاستخدام المترجم:
• افتح Code::Blocks.
• انتقل إلى Settings > Compiler.
• في علامة التبويب Selected compiler، اختر GNU GCC Compiler.
• اضغط على Toolchain executables وتأكد من أن المسار يشير إلى مجلد bin داخل MinGW
5️⃣ إنشاء مشروع جديد:
• اختر File > New > Project.
• اختر Console Application واضغط على Go.
• اختر C++ كلغة.
• قم بتسمية المشروع واختيار مكان الحفظ.
6️⃣ كتابة وتشغيل البرنامج:
• اكتب الكود التالي في ملف main.cpp
#include <iostream>
using namespace std;
int main() {
cout << "Hello, World!" << endl;
return 0;
}
• اضغط على F9 لبناء وتشغيل البرنامج.
3. مقارنة بين Visual Studio و Code::Blocks
🔸️ الميزة : التعقيد
• برنامج Visual Studio : أكثر تعقيدًا مع واجهة غنية بالميزات.
• برنامج Code::Blocks : أبسط وأخف وزنًا.
🔸️ الميزة : الدعم
• برنامج Visual Studio : يدعم العديد من اللغات والمنصات.
• برنامج Code::Blocks : يركز على C/C++ بشكل أساسي.
🔸️ الميزة : الأداء
• برنامج Visual Studio : يتطلب موارد نظام أعلى.
• برنامج Code::Blocks : خفيف الوزن ويعمل بسلاسة على الأجهزة الضعيفة.
🔸️ الميزة : التكلفة
• برنامج Visual Studio : المجتمع Community Edition مجاني
• برنامج Code::Blocks : مفتوح المصدر ومجاني بالكامل.
🔸️ الميزة : الإستخدام الشائع
• برنامج Visual Studio : مشاريع كبيرة ومعقدة.
• برنامج Code::Blocks : مشاريع صغيرة إلى متوسطة الحجم.
4. الخلاصة العامة
• يعتبر Visual Studio هو الخيار الأفضل للمشاريع الكبيرة والمعقدة، خاصة إذا كنت تعمل على نظام Windows.
• بينما يعتبر Code::Blocks هو خيار رائع للمبتدئين أو للمشاريع الصغيرة، وهو يعمل على أنظمة متعددة.
#دورة_سي_بلس_بلس
#C_plus_plus
#الدرس_الثالث_سي_بلس_بلس
#المستوى_الأول
✅ الرجاء متابعة قناتنا 👇
@artificial_AI_intelligence
🤗 اذا إستفدت من الدرس لا تنسى الدعاء لنا 🤲