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


كل ما تحتاجة للكومبيوتر برامج كتب منوعات حمل ما تشاءمن البرامج حمل ادوبي فوتوشوب وينرارالخ ..
 
الرئيسيةالبوابةأحدث الصورالتسجيلدخول

 

 البـرمجــــة غرضيــــة التوجــــة | Object-Oriented Programming | ---> [دورة مفصــلة]

اذهب الى الأسفل 
كاتب الموضوعرسالة
admin
Admin
Admin



عدد المساهمات : 271
تاريخ التسجيل : 04/08/2008

البـرمجــــة غرضيــــة التوجــــة | Object-Oriented Programming | ---> [دورة مفصــلة] Empty
مُساهمةموضوع: البـرمجــــة غرضيــــة التوجــــة | Object-Oriented Programming | ---> [دورة مفصــلة]   البـرمجــــة غرضيــــة التوجــــة | Object-Oriented Programming | ---> [دورة مفصــلة] Emptyالإثنين أكتوبر 13, 2008 1:38 pm

البـرمجــــة غرضيــــة التوجــــة | Object-Oriented Programming | ---> [دورة مفصــلة] Bsm


البـرمجــــة غرضيــــة التوجــــة | Object-Oriented Programming | ---> [دورة مفصــلة] Salam


البـرمجــــة غرضيــــة التوجــــة | Object-Oriented Programming | ---> [دورة مفصــلة] Welcome


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


** مقدمة عامة تشمل المفاهيم الأساسية ومزايا البرمجة الشيئية . المشاركة: 3
** مستويات الحماية وإنشاء الأصناف واستدعاء الأعضاء ( البيانات والدوال ). المشاركة: 4 , المشاركة: 5
** مؤثر دقة الوصول ( :: ) Scope Resolution Operator . المشاركة: 6
** دوال البناء والهدم . المشاركة: 6 , المشاركة: 12
** المؤشر الحسابي & الحجز الديناميكي للذاكرة باستخدام new & delete . المشاركة: 13
** الكائنات والدوال الثابتة constant objects & constant Functions . المشاركة: 18
** المؤشر This . المشاركة: 23
** الأعضاء الساكنة static datda member. المشاركة: 21
** الدوال الصديقة friend functions . المشاركة: 19
** الأصناف الصديقة Friend Classes . المشاركة: 20
** الدوال الخطية Inline Functions. المشاركة: 22
** التحميل الزائد للدوال Function Overloading . المشاركة: 24
** التحميل الزائد للمؤثرات Operator Overloading . المشاركة: 25
** التحويل بين الأنواع Converting between types . المشاركة: 26
** الوراثة :.. المشاركة: 38

ملاحظة مهمة : الرجاء قراءة صفحات الموضوع كاملاً لان هناك العديد من الدروس الفرعية لم توضع لها وصلات هنا ، وأيضاً وجود بعض المشاركات والتوضيحات من الأخوان وفقهم الله أجمعين ..



البـرمجــــة غرضيــــة التوجــــة | Object-Oriented Programming | ---> [دورة مفصــلة] Fa9l

وكل أملي بإذن الله أن أكون قد اخترت ما يناسبكم وأن تنال هذه المواضيع على استحسانكم ورضاكم ..

البـرمجــــة غرضيــــة التوجــــة | Object-Oriented Programming | ---> [دورة مفصــلة] Fa9l

البرنامج أو المترجم الذي سنعمل عليه هو Dev - c++ أنقر هنا لزيارة الصفحة الرئيسية للمترجم .
ولتحميل البرنامج مباشرة .::


البـرمجــــة غرضيــــة التوجــــة | Object-Oriented Programming | ---> [دورة مفصــلة] Download


آخر تحديث بتاريخ 6-3-2008
إضافة كتاب الكتروني EBook يجمع كافة الدروس ..


http://www.mediafire.com/download.php?2quy9mqbwjd



البـرمجــــة غرضيــــة التوجــــة | Object-Oriented Programming | ---> [دورة مفصــلة] Fa9l

معذرة أحبابي في حال عدم ردي على أحد المواضيع المشارك بها أو الرسائل الخاصة ..
فدخولي قليل جداً في هذه الأيام ..
دعواتكــم لي بالتوفيق ...
الرجوع الى أعلى الصفحة اذهب الى الأسفل
https://fatmhzahra.ahlamontada.net
admin
Admin
Admin



عدد المساهمات : 271
تاريخ التسجيل : 04/08/2008

البـرمجــــة غرضيــــة التوجــــة | Object-Oriented Programming | ---> [دورة مفصــلة] Empty
مُساهمةموضوع: البـرمجــــة غرضيــــة التوجــــة للموضوع   البـرمجــــة غرضيــــة التوجــــة | Object-Oriented Programming | ---> [دورة مفصــلة] Emptyالإثنين أكتوبر 13, 2008 2:04 pm

البـرمجــــة غرضيــــة التوجــــة | Object-Oriented Programming | ---> [دورة مفصــلة] Bsm
** معنى البرمجة الشيئية :: oop
هي عبارة عن أسلوب جديد من أساليب البرمجة حيث أصبحت وحدة بناء البرنامج هي الصنف class والذي يحوي على البيانات data والعمليات ( الدوال ) functions .
ولها عدة مسميات منها ..::
1- البرمجة غرضية التوجة .
2- البرمجة الكائنية الموجهة .

البـرمجــــة غرضيــــة التوجــــة | Object-Oriented Programming | ---> [دورة مفصــلة] Fa9l
* أسلوب البرمجة الشيئية :.
عادة ما تكون البرامج من هذا الأسلوب معقدة بشكل كبير حيث تقسيم البرنامج إلى مجموعة من المهام الرئيسية ومن ثم تقسم إلى مهام فرعية على حسب درجة التعقيد للمهام الرئيسية لذلك فان البرمجة الهيكلية تنتهج النهج ( من الأعلى إلى الأسفل ) Top Down .

البـرمجــــة غرضيــــة التوجــــة | Object-Oriented Programming | ---> [دورة مفصــلة] Fa9l

* عيوب هذا الأسلوب : البرمجة الهيكلية .::
1- صعوبة فصل البيانات على العمليات .
2- إعادة إنشاء الحلول وعدة إعادة استخدامها .

البـرمجــــة غرضيــــة التوجــــة | Object-Oriented Programming | ---> [دورة مفصــلة] Fa9l

* المفاهيم الأساسية للبرمجة الشيئية :.

1- الكائن Object :

عبارة عن وحدة تحوي مجموعة من البيانات تسمي ( خصائص ) properties أو صفات ومعرفة عليها مجموعة من العمليات .
مثال .:: كائن السيارة .:

الخصائص :
Model :Ferrari
Color : Blue
Year : 2005

العمليات ::.
Start ' الانطلاق '
Stop ' التوقف '
Accelerate 'التسارع'


البـرمجــــة غرضيــــة التوجــــة | Object-Oriented Programming | ---> [دورة مفصــلة] Fa9l

2- الصنف Class : الكائنات ذات الخصائص والأفعال المشتركة بحاجة لآن تجمع مع بعضها البعض حتى يمكن استخدامها في برنامج ما.
وبالتالي فإن الصنف : عبارة عن مجموعة من الكائنات التي تشترك في الخصائص والعمليات ..
مثلاً ..::
الطالب كائن >> الطلاب صنف .
الموظف كائن >> الموظفين صنف .


البـرمجــــة غرضيــــة التوجــــة | Object-Oriented Programming | ---> [دورة مفصــلة] Fa9l

* مزايا البرمجة الشيئية :. Features of (opp)

1- التجريدabstraction : وهو عملية تحديد الخصائص والعمليات التي تنتمي لصنف معين وهي نوعان .::

أ- تجريد البيانات Data abstraction : وهي عملية التعرف على الخصائص المرتبطة بكائن معين .
ب- تجريد العمليات Methods abstraction: وهو عملية تحديد العمليات والإجراءات دون ذكر شيء عن كيفية أدائها .

2- التغليف ( الكبسلة )Encapsulation : هي عملية تجميع كل الخصائص properties والطرق ( العمليات ) Methods في وحدة واحدة ( داخل غلاف واحد ) حيث لا يمكن الوصول إليها ( أي الخصائص والطرق ) إلا عن طريق الكائن .

3- إخفاء البيانات Data Hiding:. وهي ميزة ناتجة عن كبسلة البيانات وتعني إضافة مستوى حماية معين على البيانات حتى نمنع وصول الخطأ إليها .

4- الوراثة Inhertance:. وهي أن يرث صنف ما الخصائص والعمليات الموجودة في الصنف الآخر مما يساعد على إعادة الاستخدام للأصناف التي تم إنشاؤها من قبل المستخدم . .



البـرمجــــة غرضيــــة التوجــــة | Object-Oriented Programming | ---> [دورة مفصــلة] Fa9l

** أمثلة لبعض الأصناف المشتقة والأساسية في الوراثة :..


البـرمجــــة غرضيــــة التوجــــة | Object-Oriented Programming | ---> [دورة مفصــلة] 1

5- تعدد الأشكال ( الأوجه ) polymorfisme: تسمح ميزة تعدد الأشكال لنفس الدالة أن تتعرف بصورة مختلفة في أصناف مختلفة .
ويمكن عمل ذلك بـ الوراثة مع تعدد الأشكال .
واللغات التي تدعم أسلوب البرمجة الشيئية كثيرة نذكر منها ..
C++ و java و C# و vb.net
__________________
الرجوع الى أعلى الصفحة اذهب الى الأسفل
https://fatmhzahra.ahlamontada.net
admin
Admin
Admin



عدد المساهمات : 271
تاريخ التسجيل : 04/08/2008

البـرمجــــة غرضيــــة التوجــــة | Object-Oriented Programming | ---> [دورة مفصــلة] Empty
مُساهمةموضوع: الدرس الثاني للبـرمجــــة غرضيــــة   البـرمجــــة غرضيــــة التوجــــة | Object-Oriented Programming | ---> [دورة مفصــلة] Emptyالإثنين أكتوبر 13, 2008 2:30 pm

الدرس الثاني :..


البـرمجــــة غرضيــــة التوجــــة | Object-Oriented Programming | ---> [دورة مفصــلة] Fa9l
** مستويات الحماية ( محددات الوصول للعضو ) .:
هي عملية تحديد مدى التعامل مع الأعضاء ( البيانات والعمليات ) . هل هذه الأعضاء خاصة بالصنف المعرفة فيه ، أم يمكن استخدام نطاق الصنف وهي ثلاث مستويات .::
1- مستوى الحماية الخاص private :
وفيه يتم تعريف الأعضاء التي يتم استخدامها في الصنف ، ولا يمكن الوصول إليها من خارج الصنف .
2- مستوى الحماية المحمي protected :
الأعضاء المعرفة في هذا المستوى تشبه الأعضاء الخاصة غير أنه يمكن توريثها إلى أي صنف آخر .
3- مستوى الحماية العام Public :
وفيه يتم تعريف الأعضاء العامة التي يمكن الوصول إليها من خارج الصنف .

البـرمجــــة غرضيــــة التوجــــة | Object-Oriented Programming | ---> [دورة مفصــلة] Fa9l

* ملاحظات :.
1- دائماً تتبع محددات الوصول للعضو بنقطتين ( : ) مثلاً
كود:
[Private:]Private:


2- يمكن أن تظهر عدة مرات وبأي ترتيب في تعريف الصنف .
3- يتم إعادة تعريف البيانات الأعضاء في مستوى الحماية الخاص Private لأن من مبادئ البرمجة الشيئية " إخفاء البيانات " .
4- يتم إعادة تعريف الدوال الأعضاء في مستوى الحماية العام لآن هذه الدوال يتم استدعاؤها من خلال البرنامج الرئيسي .
5- من الممكن أن يكون لدينا بيانات عامة وعمليات خاصة غير أن هذا الاستخدام غير شائع .


البـرمجــــة غرضيــــة التوجــــة | Object-Oriented Programming | ---> [دورة مفصــلة] Fa9l


** الأصناف Classes :


البـرمجــــة غرضيــــة التوجــــة | Object-Oriented Programming | ---> [دورة مفصــلة] Fa9l


تعريف الصنف : هو عبارة عن وحدة تحوي مجموعة من البيانات ( الخاصة والعامة )بالإضافة إلى تعريف الدوال ( العمليات ) حيث يطلق على الدوال المعرفة داخل الصنف بـ " أعضاء دالية " member Function .

البـرمجــــة غرضيــــة التوجــــة | Object-Oriented Programming | ---> [دورة مفصــلة] Fa9l


* الإعلان عن الصنف :


البـرمجــــة غرضيــــة التوجــــة | Object-Oriented Programming | ---> [دورة مفصــلة] 2

أمثلة :.
مثال 1: مثال على صنف الوقت .::
كود PHP:
class Time
{
private:
int hor ,minute ,second;
public:
void settime(int,int,int);
void printstandard ();
void printmilitary();
};

البـرمجــــة غرضيــــة التوجــــة | Object-Oriented Programming | ---> [دورة مفصــلة] Fa9l



مثال 2 : مثال على صنف المستطيل :.

كود PHP:
class rectangle
{
int x,y;
public:
void set_value(int,int);
int area();
};



بمجرد تعريف الصنف يمكن استخدامه كنوع جديد حيث يطلق عليه ( نوع معرّف من قبل المستخدم).



البـرمجــــة غرضيــــة التوجــــة | Object-Oriented Programming | ---> [دورة مفصــلة] Fa9l


** تعريف الكائنات .::

يتم تعريف الكائنات في البرنامج الرئيسي وفقاً للصيغة التالية :



class_name object_name


حيث :
class_name : اسم الصنف ( نفس اسم الصنف الذي كتبناه في بداية البرنامج )
object_name : اسم الكائن ، وهو اختياري ، يستخدم للوصول لعناصر الصنف .



البـرمجــــة غرضيــــة التوجــــة | Object-Oriented Programming | ---> [دورة مفصــلة] Fa9l

مثال.::
كود:
rectangle rect;
حيث rectangle اسم الصنف ، و rect اسم الكائن .

وإذا أردنا أن نعرف أكثر من كائن بنفس الوقت ، نفس العملية السابقة ، فقط نفصل بين كل كائن والآخر باشارة الفاصلة ( , ) . والمثال التالي يوضح ما سبق .::



البـرمجــــة غرضيــــة التوجــــة | Object-Oriented Programming | ---> [دورة مفصــلة] Fa9l



كود:
rectangle rect1,rect2,rect3;


البـرمجــــة غرضيــــة التوجــــة | Object-Oriented Programming | ---> [دورة مفصــلة] Fa9l
الرجوع الى أعلى الصفحة اذهب الى الأسفل
https://fatmhzahra.ahlamontada.net
 
البـرمجــــة غرضيــــة التوجــــة | Object-Oriented Programming | ---> [دورة مفصــلة]
الرجوع الى أعلى الصفحة 
صفحة 1 من اصل 1

صلاحيات هذا المنتدى:لاتستطيع الرد على المواضيع في هذا المنتدى
منتديات فاطمة الزهراء :: الفئة الأولى :: منتدى البرمجة-
انتقل الى: