تقرير حول كتاب المرجع المختصر في لغة C++ باللغة العربية



هذا الكتاب  هو الجزء الاول في تلبية طلب كتاب مبسط لشرح c++.net وهذا الجزء خاص بتعلم لغة سي ++ نفسها بدون مكتبات ثم ان شاء الله في الجزء الثاني سنقدم كتبان احدهما لتعلم مكتبة MFC  والثاني لتعلم مكتبة  NET. و مشوار البرمجة ب c++.net ليس باليسير فاولا يجب  تعلم لغة c++   ثم بعد ذلك لدينا الخيار اما بتعلم مكتبة الدوت نت و هي موجودة في الاصدارات من فيجول استوديو ما بعد الاصدار السادس او مكتبة MFC (مكتبات صفوف ميكروسوفت التاسيسية ) وهي المكتبات التي تدعمهما الاصدارات من فيجوال استوديو حتي الاصدار السادس والتي استمر دعمها ايضا في الاصدارات ما بعد السادس 

فالفرق بين Visual C++ 6 و  Visual C++.Net ما يلي
  • برامجك علي visual c++ 6 تستخدم لبرمجة  الويندوز مكتبة MFC وهي متوفرة ايضا في الاصدار التالية وبالتحديثات 
  • في الاصدار Visual C++6 لا يمكن كتابة برامج باستخدام مكتبة .NET
  • في الاصدار  ,2008,2005,2003,2001 يمكنك كتابة برامج باستخدام MFC او باستخدام .NET

الفرق بين مكتبة MFC و مكتبة NET.  باختصار وبدون الدخول في تفاصيل تتطلب خبره سابقه في البرمجة

  • مكتبة MFC سريعه جدا ا وتتيح لك ان تتحكم في الذاكرة
  • بعض المبرمجين يرون ان هذه العملية شاقة ولا حاجة اليها ولذلك هم تحولوا كلية  الي C# او ابقوا علي استعمالهم للغة c++ ولكن مع مكتبة NET.


الوحدة الأولى
مقدمة  إلى البرمجة بلغة C++


بنهاية هذه الوحدة:
•    ستتمكن من كتابة برامج C++ بسيطة.
•    ستتمكن من استخدام عبارات الإدخال والإخراج.
•    ستتعرف على أنواع البيانات الأساسية في C++.
•    ستتمكن من إستعمال العوامل الحسابية في C++.
•    ستتعرف على العوامل العلائقية في C++
 

المقدمة
اللغات الإجرائية:
 الأسلوب الكائني المنحى:-
مميزات اللغات كائنية المنحى :
الفئات والوراثة (Inheritance):
قابلية إعادة الاستعمال Reusability:
تعدد الأشكال والتحميل الزائد :       Polymorphism and overloading
كيفية كتابة برنامج بـ C++
التعليقات:Comments
 مرشدات المهيئ(Preprocessor Directive)   :-
الدالة main :-
الخرج إلى الشاشة:-
العبــارة return 0 :-
أنواع البيانات الأساسية في لغة ++ C
1/ الأحرف char  :-
2/ الأعداد الصحيحة:
3/ الأعداد الصحيحة غير المعلمة(Unsigned ):-
4/ الأرقام العائمة (Float):
تعريف المتغيرات
تسمية المتغير:
الدخل من لوحة المفاتيح:-
المناور endl:-   
العوامل الحسابية Math Operators
العوامل العلائقية (Relational Operators)


الوحدة الثانية
بنيات التحكم (I) -  Control Structures(I)



بنهاية هذه الوحدة :
•    ستتمكن من استعمال تعبير الإختبار if.
•     ستتمكن من استعمال تعبير الإختبار if… else.
•    ستتمكن من استعمال تعبير الاختبار switch

مقدمة
بنيات التحكم الشرطية
العبـارة if
العبـارة if…else  
العبـارة   switch

الوحدة الثالثة
بنيات التحكم(II) -  Control Structures(II)


الأهــداف:
بنهاية هذه الوحدة:
•    ستتمكن من استعمال عوامل التزايد Increment والتناقص Decrement والعوامل المنطقية Logical operators .
•    ستتمكن من استعمال حلقات التكرار  while و do و for لتكرار تنفيذ عبارات في برنامجك


عوامل التعيين الحسابي
عوامل التزايد والتناقص
العوامل المنطقية
أولوية العوامل (Operator Precedence):-
بنيات التحكم التكرارية
الحلقات(LOOPS)  
الحلقة while
الحلقة do
الحلقة for
الحلقات المتداخلة
التحكم بالحلقات
العبارة break :-
العبارة continue :-
الوحدة الرابعة
الدوال Functions


بنهاية هذه الوحدة :
•    ستتمكن من تقسيم برنامجك إلى أجزاء صغيرة تسمى دوال (Functions) .
•    ستتعرف على أغلب الدوال الرياضية الجاهزة والمعرفة في الملف math.h والتي تقوم بالعمليات الرياضية.
•    ستتعرف على كيفية كتابة الدوال في C++

المقدمة
فوائد استخدام الدوال في البرمجة
مكتبة الدوال الرياضية( Math Library Functions)
الدوال المعرفة بواسطة المستخدم Programmer-defined Functions
نموذج الدالة Function Prototype
تعريف الدالة Function Definition
إستدعاء الدالة Function Call
قيم الإعادة Returned Values
الوسيطات Parameters
دوال بدون وسيطات Functions with Empty Pararmeter Lists
الدوال السياقية Inline Functions
تحميل الدالات بشكل زائد Overloading Functions
الوسيطات الافتراضية Default Arguments
التمرير بالقيمة والتمرير بالمرجع

الوحدة الخامسة
المصفوفات  والمؤشرات Arrays & Pointers

بنهاية هذه الوحدة:
•    ستتعرف على بنية المصفوفات (Arrays) .
•    ستتمكن من الإعلان عن وتمهيد والوصول إلى أي عنصر من عناصر المصفوفة .
•    ستتعرف على المصفوفات متعددة الأبعاد.
•    ستتمكن من استعمال المؤشرات (Pointers) .
•    ستتمكن من استعمال مصفوفات السلاسل.

مقدمة
المصفوفات Arrays   
الإعلان عن المصفوفات:-
مثال عن استخدام المصفوفات:
السلاسل Strings
مكتبة دالات السلاسل
1/strlen( ):-
2/ strcpy( ):-
3/ strcat( ):-
4/ strcmp( ):-
تمرير المصفوفات كوسائط للدوال Passing Arrays to Functions
المصفوفات متعددة الأبعاد Multidimensional Arrays
المؤشرات   Pointers
عوامل المؤشرات:-
1/ عامل العنوان  &:-
2/ العامل * :
عامل المواربة indirection.
مؤشرات إلى void:-
المؤشرات في استدعاء الدوال
1-    التمرير بالقيمة call-by-value  .
2-    التمرير بالمرجع call-by-reference  .
3-    التمرير بالمرجع مع مؤشر call by reference with pointer arguments
المؤشرات والمصفوفات
المؤشرات والسلاسل
استعمال العوامل الحسابية مع المؤشرات
إدارة الذاكرة باستعمال العوامل new و delete:-
العامل new:-
العامل delete:-
المؤشر This:

الوحدة السادسة
الفئات(I) - Classes (I)
بنهاية هذه الوحدة:
•    ستتعرف على كيفية إنشاء الفئات في لغة C++.
•    ستتعرف على كيفية إنشاء واستعمال كائنات الفئات.
•    ستتعرف على كيفية الوصول إلى الأعضاء البيانية والدالية في الفئة.
•    ستتعرف على مفهوم البنيات في لغة C++.

مقدمة
1/اسم الفئة والذي يعمل كنوع البيانات الذي ستمثله الفئة.
2/مجموعة من الأعضاء البيانية في الفئة (data members) حيث يمكن أن تحتوى الفئة على صفر أو أكثر من أي نوع من أنواع البيانات في C++ .
3/مجموعة من الأعضاء الدالية (member functions) معرفة داخل الفئة وهي تمثل مجموعة العمليات التي سيتم تنفيذها على كائنات الفئة.
4/ محددات وصول (access specifiers) وتكتب قبل الأعضاء البيانية والأعضاء الدالية لتحدد إمكانية الوصول إلى هذه الأجزاء من الأجزاء الأخرى في البرنامج.
تعريف الفئة  The Class Definition
الأعضاء البيانية Data Members
الأعضاء الدالية  Member Functions
محددات الوصول Access Specifiers
إنشاء الكائنات والتفاعل معها
التفاعل مع الكائنات:-
عامل دقة المدى:-scope resolution operator
كيفية الوصول إلى الأعضاء العامة في الفئة:
البنيــات structures
الوصول إلى أعضاء البنية Accessing structs
تمهيد المتغيرات البنيوية:
إستعمال البنية:
البنيات مقابل الفئات Structs vs. Classes


الوحدة السابعة
الفئات (II)  - Classes (II)

بنهاية هذه الوحدة:
•    ستتعرف على المشيدات constructors.
•    ستتعرف على المهدمات destructors .
•    ستتمكن من إنشاء كائنات ثابتة Constant objects وأعضاء دالية ثابتة Constant member functions.
•    ستتمكن من استعمال أعضاء بيانية ساكنة Static data members وأعضاء دالية ساكنة Static member functions
المشيدات Constructors
المهدمات Destructors
وسائط المشيدات Parameterized constructor:-
المشيد أحادى الوسيطات :- Constructor with one parameter
متى يتم تنفيذ المشيدات والمهدمات :-
الكائنات الثابتة Constant Objects
الأعضاء الساكنة في الفئات Static class member
البيانات الساكنة :-
الأعضاء الدالية الساكنة Static member functions:-


الوحدة الثامنة
الفئات Classes(III) - (III)
الأهداف:
بنهاية هذه الوحدة:
•    ستتعرف على الغرض من الدوال الصديقة.
•    ستتعرف على الفئات الصديقة.
•    ستتعرف على كيفية إعادة تعريف العوامل لتعمل مع الأنواع الجديدة.
•    ستتعرف على القيود التي تواجه تحميل العوامل بشكل زائد.

الدوال الصديقة Friend Functions
الفئات الصديقة Friend Classes
تعيين الكائنات Object assignment
تحميل العوامل بشكل زائد Operators Overloading
كيفية تعريف دالة العامل Operator function
تحميل عوامل التعيين بشكل زائد
تحميل عامل بشكل زائد باستخدام دالة صديقة

الوحدة التاسعة
الوراثة وتعدد الأشكال Inheritance and Polymorphism

بنهاية هذه الوحدة:
ستتعرف على مفهوم الوراثة في لغة C++.
•    ستتعرف على كيفية توفير الوراثة لقابلية إعادة استعمال الفئات.
•    ستتعرف على مفهوم الفئة القاعدة (base class) والفئة المشتقة(derived class).
•    ستتمكن من استعمال الوراثة المتعددة لاشتقاق فئة من فئتين قاعدتين أو أكثر.
•    ستتعرف على مفهوم تعدد الأشكال(polymorphism) في لغة C++ .
•    ستتعرف على كيفية الإعلان عن استعمال الدوال الافتراضية (virtual functions) .
•    ستتعرف على كيفية الإعلان عن استعمال الدوال الافتراضية النقية (pure virtual functions)  لإنشاء فئات تجريدية (abstract classes).

مقدمة
الوراثة المحمية Protected Inheritance
الوراثة والأعضاء المحمية Inheritance and protected members
المشيدات والمهدمات والوراثة
الوراثة المتعددة Multiple Inheritance
تعدد الأشكال Polymorphism
الدالات الافتراضية Virtual Functions
الفئات التجريدية  Abstract Classes
الدالات الإفتراضية النقية Pure virtual functions


الوحدة العاشرة
القوالب والإستثناءات
بنهاية هذه الوحدة:
•    ستتمكن من استعمال قوالب دالات لإنشاء مجموعة من الدوال المرتبطة ببعضها.
•    ستتمكن من استعمال قوالب الفئات (Templates Classes).
•    ستتعرف على مفهوم الاستثناءات في لغة C++.
•    ستتمكن من استعمال كتل المحاولة try blocks والتي تحصر العبارات التي يمكن أن تؤدى إلى حدوث استثناء.
•    ستتمكن من رمى الاستثناء.
•    ستتمكن من استعمال كتل التقاط catch blocks والتي تقوم بمعالجة الاستثناء.


قوالب الدالات Template Functions
المصرف وقوالب الدالات
قالب دالات مع وسيطتي قالب
قوالب الفئات Templates Classes
الإستثناءات Exceptions
التركيب النحوي للاستثناء:-
الوحدة الحادية عشرة
دفق دخل/خرج C++

بنهاية هذه الوحدة:
•    ستتمكن من استخدام (دفق دخل/ خرج) (Input/Output Stream)  في لغة C++.
•    ستتمكن من تنسيق الدخل /الخرج.
•    ستتعرف على كيفية إدخال وإخراج الكائنات التي تنشئها بنفسك.
•    ستتمكن من إنشاء مناورات خاصة بك

مقدمة
هرمية فئات الدفق
أعلام التنسيق Format state flags
المناورات Manipulators
دوال الدفق Stream Functions
الفئة istream
الفئة ostream
تحميل العوامل<<      و >>  بشكل زائد
كيفية إنشاء مناورات خاصة بنا
الوحدة الثانية عشرة
معالجة الملفات File Processing

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


مقدمة
الملفات والدفق Files and Stream
إنشاء ملف تتابعي Creating a Sequential file
قراءة البيانات من ملف تتابعي Reading Data from a Sequential file
الوصول العشوائي لمحتويات ملف تتابعي Random Access to a Sequential file






تعليقات

إرسال تعليق

المشاركات الشائعة من هذه المدونة

الشاشة الإفتتاحية لإكسل

أوامر الجافا سكريبت JavaScript

مسائل علي الترانزستورات MOSFET