object oriented programming

38
ة ي ئ ي ش ل ا ة ج م ر لب ا| Object-Oriented Programming | Object-Oriented Programming Gahwah

Upload: tamer-abu-alzenat

Post on 10-Aug-2015

64 views

Category:

Art & Photos


3 download

TRANSCRIPT

Page 1: Object oriented programming

◘ البــرمــجـة الشــيئـيــة ◘

◘ |Object-Oriented Programming |◘

Object-Oriented Programming Gahwah

Page 2: Object oriented programming

األول : الدرس

الشيئية البرمجة oop :: معنى

عن عبارة البرنامج هي بناء وحدة أصبحت حيث البرمجة أساليب من جديد أسلوبالصنف البيانات والذي class هي على الدوال ) data يحوي functions .(والعملياتمنها ولها مسميات ..::عدة

التوجة 1 - غرضية .البرمجةالكائنية 2 - .الموجهة البرمجة

الشيئية البرمجة :.أسلوبتقسيم حيث كبير بشكل معقدة األسلوب هذا من البرامج تكون ما إلى عادة البرنامج

درجة حسب على فرعية مهام إلى تقسم ثم ومن الرئيسية المهام من مجموعةإلى ) األعلى من النهج تنتهج الهيكلية البرمجة فان لذلك الرئيسية للمهام التعقيد

Top Down .(األسفل

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

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

:Object الكائن 1 -

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

السيارة .:: كائن .:مثال

:الخصائصModel :Ferrari

Color : BlueYear : 2005

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

Accelerate' التسارع'

: Class الصنف 2 -البعض بعضها مع تجمع آلن بحاجة المشتركة واألفعال الخصائص ذات حتى الكائنات

ما برنامج في استخدامها .يمكنمن : مجموعة عن عبارة الصنف فإن الخصائص وبالتالي في تشترك التي الكائنات

..والعملياتi ..:: مثال

كائن صنف << الطالب .الطالبكائن صنف << الموظف .الموظفين

Object-Oriented Programming Gahwah

Page 3: Object oriented programming

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

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

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

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

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

الخصائص ) أي إليها الكائن ( الوصول طريق عن إال . والطرق

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

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

. .المستخدم

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

األوجه ) 5 - األشكال تعدد :polymorfisme (تعدد ميزة أن تسمح الدالة لنفس األشكال

Object-Oriented Programming Gahwah

Page 4: Object oriented programming

مختلفة أصناف في مختلفة بصورة .تتعرفبـ ذلك عمل األشكال ويمكن تعدد مع . الوراثة

نذكر كثيرة الشيئية البرمجة أسلوب تدعم التي ..منها واللغاتC ++و java و C #و vb.net

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

: Classes األصناف

الصنف البيانات :تعريف من مجموعة تحوي وحدة عن عبارة الخاصة( هوالدوال ( ) ( على يطلق حيث العمليات الدوال تعريف إلى باإلضافة والعامة

دالية " أعضاء بـ الصنف داخل . member Function "المعرفة

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

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

:كود

class_name object_name

: حيث: class_name الصنف بداية ) اسم في كتبناه الذي الصنف اسم نفس

( البرنامج: object_name لعناصر للوصول يستخدم ، اختياري وهو ، الكائن اسم

.الصنف

.::مثال

:كود

rectangle rect;

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

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

سبق ما .::يوضح

:كود

rectangle rect1,rect2,rect3;

األعضاء :. استدعاء

Object-Oriented Programming Gahwah

Page 5: Object oriented programming

نصل أن يمكن ال الصنف طريق أعضاء عن إال الصنف خارج من إليهاالتالية بالصيغة ذلك ويتم :الكائنات

:كود

Object_name.member

.:: حيثObject_name: الكائن . اسم

member: نريد الذي العضو إليه اسم .الوصول

للدالة :مثال الوصول أردنا الكائن )( area إذا اآلتي rect باستخدام :نكتب

:كود

rect1.area()

الوصول دقة Scope Resolution Operator مؤثر

الصنف عبارة خارج العضو الدالة تفاصيل تكتب عندما يستخدم مؤثر .عن

هي الصنف خارج تكتب التي للدالة العامة : الصيغة

:كود

DataType ClassName::FunctionName (Function Arguments )

Object-Oriented Programming Gahwah

Page 6: Object oriented programming

الثالث : الدرس

البرمجة : عن iبعيدا مقدمة

كبداية أو اآلن فوقك أو اليسار على أو اليمين على بجانبك ترى ماذا لك قلت لوأمامك أو السطر (تحتك هذا قرأت طالما كمبيوتر انه واضح ذي امامك iطبعا)...

العموم بجواري على األحمر أشياء ستقول باللون أشياء كلمة والحظ .. كثيرة

؟ بجوارك التي األشياء هذه ماهي

أخر اإلجابة إلى شخص من ستختلف السؤال هذا ..على

ومنهم دوالب بجواري سيقول من سيقول فمنهم ومنهم الكمبيوتر طابعة سيقولوهكذا ...النافذة

أشياء هذه كل ..إذا

شئ يعتبر فإنه عليه عينك تقع شئ أي فإن النافذة بفتح أنت قمت ( ..thing )ولو

..المهم

كل : تقول قاعدة هذه شئ هناك كائن في هو .الدنيا

األحمر باللون iأيضا شئ كلمة فستجد iقليال ركزت لو أن ... اآلن أنت ستستنج لذلككائن هو عينك ماتراه وكل بجوارك ماهو عليك .. بطل Object( كل الله )ماشاء

كائن = ألن الشئ يعني كائن هو شئ كل تقول .القاعدة

الذي الدوالب إلى نظرت وذلك فإذا كائن فهو شئ أنه قليل قبل عليه تقول كنتوضعناها التي القاعدة إلى فهو باإلستناد الكتاب إلى و كائن فهو الكمبيوتر وإلى

وهكذا .. ..كائن

يأتي :التساؤل وهنا

الكائن ؟( Object )ماهو

Object-Oriented Programming Gahwah

Page 7: Object oriented programming

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

؟ الكائن ماهو إذا

قاعدة وهناك شئ هو الكائن فإن ذكرنا :تقول كما

وهما شيئين له الدنيا هذه في كائن .خصائصو أساليب كل

وما أساليب مامعنى ولكن اتفقنا ؟ إذا خصائص ...معنى

هذه تثبت أن يجب السؤال هذا على نجيب ان وقبل البداية عقلك في في المعلومةالكائن ان خصائص Object وهي هما شيئين (methods )وأساليب( Attributes )له

من الكائن يتكون أخر :بكالمattributes خصائص 1 -methods أساليب 2 -

نظري ( بشكل اتكلم أني اآلن الحظ ...( إلى

خصائص مامعنى ؟ طيب

عنها ينفك أن واليستطيع الكائن في موجودة أشياء هي خصائص كلمة وتكون معنىللكائن .مالزمة

؟ أساليب مامعنى

الكائن معنى ينفذها أشياء أي الكائن بفعلها يقوم أشياء هي .أساليب

كيف الفلسفي طيب الكالم هذا ؟ نفهم

واقعي مثال نأخذ أن وهي ...بسيطة

كائن هو شئ كل تقول القاعدة أن ككائن بما يكون مثال نأخذ دعنا ...إذا

هو مثالنا سيكون ...( اإلنسان )لذلك

i ايضا كائن وهو شئ ..فهو

له فإن كائن أنه القاعدة وبما في ذكرنا كما وخصائص ...أساليب

ماهي ؟ إذا أساليبه وماهي اإلنسان .خصائص

عنها وهي خصائصه ينفك ان واليستطيع له المالزمة ...األشياءالبشرة لون مثل

الطولالوزنالحجمالعمر

Object-Oriented Programming Gahwah

Page 8: Object oriented programming

...

اإلنسان أساليب

الكائن بها يقوم التي االشياء القاعدة حسب وهي

اإلنسان فماهي بها يقوم التي ..األشياء

..المشيالجريالنوم

إلى اليمين الحركةاليسار إلى الحركة

الكائن وخصائص أساليب مامعنى يوضح ؟ ...وهذا

سيارة يمثل كائن خذ لك قلت فلو هنا اإلختبار نريد اآلن ...لذلك

السيارة كائن وأساليب خصائص ؟ فماهي

الجوال كائن

كائن لك سأترك كمثال ...السيارة

الفهم لترسيخ أخر مثال ...وسأعطي

الجوال : كائن مثال

جوال يمثل كائن عن سنتكلم ...اآلن

عن ... ) بعيدة أني الحظ واألساليب الخصائص وسأستخرج قلم سأحضر iالبرمجة إذا)

الجوال كائن ...خصائصالجوال - 1 .لونالمصنعة - 2 الشركة .الموديل - 3التصنيع - 4 .سنة.التصنيع دولة- 5.حجمه- 6 .وزنه - 7

الكثير إستخالص ...وبإمكانك

الجوال كائن التي ( أساليب االشياء ماهي ؟ أي الجوال فعلها )يستطيع

.اإلتصال-1اإلتصال - 2 .قطع.األرقام تخزين- 3معين - 4 رقم عن .البحث

Object-Oriented Programming Gahwah

Page 9: Object oriented programming

المكالمات - 5 .تحويل,,,,,

i أشياء ايضا إستخالصها يمكنك ...كثيرة

وهو ذلك من شئ ستستنتج iإذا..

واحد إذا كل لهم وقلت جوال كائن صالح وأعطيت جوال كائن محمد أعطيت أنالي يستخرج الجوال منكم كائن وأساليب ,,خصائص

مشابهه وأساليب خصائص سيحضر محمد أن ولكن فستالحظ صالح سيحضره لمامحمد أم صالح به جاء الذي الجوال كائن هل أفضل سيكون ؟ من

الدقيقة بالتفصيالت منهم كل معرفة على يعتمد السؤال هذا للجوال جواب

خط تحته وضعنا الذي الكالم ...والحظ

وقال شخص جاء إذا كتاب أي يمثل كائن أريد ...لي

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

برمجي كود إلى أحوله ذلك وبعد وصفه ..المراد

إحدى بالكائنات وهذه البرمجة عالم في الهامة ..النقاط

كائن عن تعبر أن منك أريد والحظ اآلن اإلنجليزية باللغة ولكن شرحناه الذي الجوالعبر وإنما برمجي كود أريد ال اإلنجليزية أني اللغة استخدم ولكن عبرنا ...كما

الخصائص عن ستقول ..عندها

Attributes: mobile color -1 model -2 made year -3 made in -4 weight -5 size -6

فستقول ... لألساليب :وبالنسبةMethods:

Connections -1 Disconnect -2 Save Numbers -3

....

صعب شئ هناك ليس ترى بالعربي فكما التعبير فتستطيع الفكرة فهمت إذا وإنماباإلنجليزي ...أو

Object-Oriented Programming Gahwah

Page 10: Object oriented programming

الرابع : الدرس

واألساليب الخصائص بين العالقة

ذكرنا كائن كما أي أن وهو iسابقا( Object ) أساليب من خصائص ( methods )يتكون )وattributes.. )

كلمة :مالحظة خصائص على بعض Attributes يطلق بإسم وفي تجدها األحيانProperties..

هنا التساؤل أم هل : طيب كائن كل في والخصائص األساليب بيط تربط عالقة يوجد؟ ال

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

..جرام

وهرولة السؤال إحماء عمليات بإجراء الوزن هذا صاحب الشخص قام إذا هل اآلنعلى فهل ؟ وجري هو كما وزنه سيبقى فهل معينة زمنية فترة مدار

قد ألنه ال لي ستقول i بالطبع مثال نقص 93يصبح أي جرام ..كيلو

خاصية والوزن أسلوب الجري أن بما على إذا بالتأثير قام الجري أسلوب فإن iإذا بالزيادة أو باإلنقاص إما الوزن ...خاصية

الخصائص بين عالقة هناك أنه نستنتج هنا ..واألساليب ومن

التي األساليب أن هي العالقة ذلك وهذه خصائص على تؤثر معين كائن بها يقوم .الكائن

عزيزي يكون والتقلق أن أردت ولكن األمثلة نطبق عندما سيتضح ذلك فكل القارئالصفر من ...البدء

Object-Oriented Programming Gahwah

Page 11: Object oriented programming

أن أي وأساليبه خصائصه بين كائن أي في عالقة هناك أنه إلى خلصنا األساليب وهناذلك صفات وهي الخصائص على تؤثر فإنها الكائن بها يقوم التي األعمال وهي

.الكائن

سيارة كائن أخذت لو الفهم ولترسيخيسير السيارة كائن أن ماشئ :60بسرعة وقلت كم وقال أحد سأل لو طيب كيلومتر

وتقول خاصية 60فستجاوب أن قيمتها أي ...60السرعة

فالجواب .. البنزين دعاسة على بالضغط قمت لو ماذا زدت طيب أنك سيكونالمشي هي السيارة أساليب من أن يعني وهذا معينة سرعة إلى وعندما السرعة

بنقصان أو بزيادة إما السرعة خاصية على وتؤثر تمشي فإنك البنزين أنت ...تدوس

تعالى الله بإذن سيتضح هذا كل ,,,والتقلق

الكائن ووصف شرح

كلمة تحت خطين ضع ...(شرح) أرجوك

أساليبه بإستخراج وقم كائن أي أنت خذ معين ... اآلن كائن لك أحدد ولن وخصائصهوخصائصه أساليبه وأستخرج أنت تريده كائن أي ذكرنا خذ ...كما

بإستخراج : أنت تقوم عندما هنا فمالذي السؤال معين لكائن واألساليب الخصائص؟ أنت تفعله

بإختصار الكائن : الجواب بشرح تقوم أنك .هو

أنا : أشرح لمن هو األخر ؟ والسؤال الكائن هذا

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

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

يفهم لكي للكمبيوتر نشرحها نحن نريد ولكن ..ماذا

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

الخصائص بتفصيل أنت تقوم لماذا اآلن عرفت إذا ) فهل ؟ معين لكائن واألساليبالشاشة مع بأخرجلك ال )قلت

فيه جدول بعمل تقوم كأنك الحقيقة في فإنك معين كائن شرح عند فإنه لذلكهذا وإسم حقل الجدول حقلين هما والحقلين الكائن بإسم وحقل هو لألساليب

..للخصائص

: كالتالي

Object-Oriented Programming Gahwah

Page 12: Object oriented programming

الخاصة والخصائص باألساليب الجدول هذا بتعبئة الجدول وتقوم .بإسم

الخامس : الدرس

واحدة فصيلة من الكائنات

تكون التي واحدة الكائنات فصيلة من

يقول سؤال نفسك إسأل اآلن :طيب

يمثلون كائنات هم وسلمى وخديجة وعائشة وجمال وصالح وعلي محمد كائن أليس؟ إنسان

نعم : لي .ستقول

إختلف الذي ما ..طيب

إنسان لكل ثابته اإلنسان وخصائص أساليب أن :ستجدله إنسان كل أن فكلهم أي أساليب وله أنثى أو ذكر إما جنس وله وزن وله طول

وغير والمشي الجري ..ذلك يستطيعون

Object-Oriented Programming Gahwah

Page 13: Object oriented programming

i إذا األشخاص هؤالء بين إختلف الذي ما ..طيب

شرح أن قلنا وهي كما أساليبه وماهي خصائصه ماهي فمعروف ثابت اإلنسان كائن ثابته

مالذي ؟ ... ولكن األسود وسعد األبيض سلمان بين وعائشة محمد بين تغير

قيم هي وإنما األساليب واال الخصائص ليس اختلف الذي هو الخصائص الجواب

لديه : = سعد بينما انثى الجنس خاصية عائشة فإن الجنس وللتوضيح بإسم خاصيةذكر = ولكنها

بينما = ابيض البشرة لون خاصية لديه لون سلمان بإسم خاصية iأيضا لديه سعدأسود = ولكنها .البشرة

ذلك من نستنتج وخصائصه إذاً أساليبه وأستخرج الكائن أشرح واحدة أني .مرة

وعندها األساليب بإستخدام الكائن هذا خصائص قيم في بالتغيير أقوم ذلك وبعدمختلفة قيم ذات ولكن النوع نفس من كائنات لي .ستنتج

قبل من شرحناه الذي الجوال كائن فإن ..وللترسيخ

أنها لو على التصنيع شركة خاصية فيه نوكيا Nokia = وضعناجوال كائن بإحضار ايركسون = وقمنا التصنيع شركة خاصية وغيرنا اخر

في يختلفان ولكن جوال كالهما يمتلكونها فإن التي فاألشياء فقط الخصائص قيممختلفة األشياء تلك قيم ولكن ..ثابتة

الكائن وإنهائه تمهيد

وإنهائه الكائن تمهيد ؟ مامعنى

السرعة هي الكائن هذا خصائص فإحدى iمثال سيارة كائن أخذنا .لومرة متغيرة مرة كل ..وهكذا 140ومرة 70ومرة 100وهي

هنا السؤال أي :طيب متوقفة السيارة تكون عندما السرعة قيمة صاحبها ماهي أن؟ . السيارة سرعة ستكون فكم للنوم وذهب منزله تحت iمثال أوقفها

السرعة = قد شخص يقول = -10وربما = 0يقول .1واحدهم

يأتي عندما اآلن السرعة طيب من السيارة ستشتغل فهل السيارة i .170ليشغل مثال i مثال صفر من ستبدأ ...بالطبع

صفر من ستبدأ أنها السيارة عرفت كيف ؟ طيب

للسرعة وضعها تم إبتدائية قيمة هناك أن ...الجوابالشركة أن السرعة = أي البداية 0وضعت .عند

السرعة = وضعت أنها أول . 170فلو أنك إال فتخيل السويتش في المفتاح ماتحركالجدر في .. .أنت

Object-Oriented Programming Gahwah

Page 14: Object oriented programming

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

فيه يوجد كائن فكل قيم أسلوب لذلك ووضع وتصفير تمهيد فقط هي وظيفتهلخصائص ..الكائن إفتراضية

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

كالتالي يعمل األسلوب هذ أن :مثلالسرعة = 0ضع

1الحرار = ضع....

بالكائن الخاصة الخصائص ...لجميع

هذا باإلنجليزي : مثل ويسمى البداية أسلوب أو المحمل أو الباني يسمى األسلوبConstructor

فقط للتمهيد يستخدم أسلوب ...وهو

أن وتمهيده وكما الكائن لبدء أسلوب ..هناك

إلنهائه أخر أسلوب هناك حالة distructor فإن إلى القيم وإرجاع بتصفير يقوم وهذاوافضل بسرعة معينة تمشي كانت السيارة أن حيث السيارة ايقاف عند هو مثال

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

مع أسلوبين هناك أن هنا من للنهاية ونفهم و للبداية وهما ...الكائن

اتضحت قد المعلومة تكون ان ..وأرجوا

السادس : الدرس

كائنات مجموعة يكون قد الكائن

كائنات مجموعة يكون قد فالكائن الكالم هذا معي الحظ عزيزي كيف ... اآلن؟ ذلك

مكون يكون قد أنت معه تتعامل الذي نفسه الكائن أن من أي مجموعة من؟ ... كيف برضوا الكائنات

Object-Oriented Programming Gahwah

Page 15: Object oriented programming

فهو ... السيارة كائن مثال خذ كائن اآلن ذكرنا .كما

ماذا من تتكون السيارة ؟ طيب

- 1 ) وأساليب ) خصائص لها فالمكينة كائن وهي .الماكينةكائن ) 2 - وهي ...(البطاريةكائن ) - 3 وهو السيارة ...(هيكل...

i وهكذا أيضا كائنات عدة تكوين بعد جاء السيارة تكوين أن .. فالحظ

قد فإنك ذلك لذلك إلنشاء اخرى كائنات إلى معين كائن لشرح تحتاجأي . الكائن

سيارة أردت فإنك إذا iجدا الممممممممممممممممممممممل بالتفصيلوقد مكينة يمثل كائن وتشرح مجموعة ستذهب على نفسها الماكينة تحتوي

وهكذا تشرحها وتروح iأيضا كائنات

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

معقدة كائنات هناك أن نستنتج يجعلنا i وهذا جدا iجدا.

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

نظيف بعمل ستخرج فإنك دقيق ...للكائن

من البرمجة الخالصة عن iبعيدا موضوع

في 1 - شئ كل كائن أن يعتبر الدنيا ( .Object )هذهمن 2 - يتكون الكائن أساليب ( Attributes )خصائص أن (.Methods )وهي 3 - عنها الخصائص ينفك أن يستطيع وال للكائن مالزمة تكون التي األشياء.

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

الكائن ذلك خصائص قيم على ستؤثر األساليب به .تقومأشرحه 6 - لكي وخصائصه أساليبه ووضع الكائن ووصف بشرح أقوم أني

.للكمبيوترالعدد 7 - معروفة غير مجموعة هي الفصيلة أن أن أخر بكالم الكائنات من

قيم في مختلفة ولكن الكائنات نفس من مجموعة هي .الخصائص الفصيلةأساليبه 8 - من أسلوبين معه كائن كل وبناء أن لتمهيد يكون احدها المتعددة

الكائن وإنهاء لهدم يكون وأخر .الكائنالكائنات 9 - من مجموعة من مكون يكون قد الكائن .أنمختلفة 10 - بطرق الكمبيوتر على الكالم هذا تمثيل .يمكن

السابع : الدرس

Object-Oriented Programming Gahwah

Page 16: Object oriented programming

( i عمليا به والتعريف الكائن . ( شرح

األولى الخطوة

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

للجوال التالية والخصائص باألساليب خرجنا اننا افرض .واآلن

.الخصائص

.اللون 1 - .المصنعة الشركة 2 -

.األساليب

اإلتصال- 1اإلتصال 2 - .قطع

على كبداية .األقل فقط

... الخطوة هي فما ورق على ذكرنا كما نريده الذي استخرجنا .الثانية اآلن

الثانية الخطوة

فكيف للكمبيوتر الجوال كائن بشرح نقوم أن هي هنا الثانية ؟ الخطوة ذلك يكون

للخصائص يتم :بالنسبة بالمتغيرات فإنه البرمجة لغة في Variables تمثيلهالألساليب بالدوال :بالنسبة البرمجة لغة في تمثيلها يتم عندما functions فإنه ولكن

عليها يطلق فإنه كائن داخل الدالة . Method أسم تكونأن النظري الجزء في ذكرنا عندما iواألساليب إذا الخصائص من مجموعة هو الكائن

هو فسيكون الكمبيوتر كائن أما iنظريا من فهذا مجموعة عن المتغيرات عبارة . والدوال

؟ ذلك بعد ماذا

في الكائن أن عرفنا أن بعد خصائص ) اآلن ودوال متغيرات عن عبارة هو الكمبيوتر .(وأساليب

فكيف للكمبيوتر بها سنشرح التي الطريقة نعرف أن علينا بقي iمجموعة إذا نحدد؟ معين لكائن والدوال المتغيرات

نقول كيف أخر كذا : بكالم الخصائص فيه جوال كائن لدينا ترى للكمبيوتر؟ كذا والمتغيرات

كلمة الجواب .class هو

ماهي ؟ class ولكن

Object-Oriented Programming Gahwah

Page 17: Object oriented programming

لتخبر هي كالس كلمة هنا بإختصار ولكن فلسفي كالم بإعطائك أقوم أنك لنمعين كائن وأساليب خصائص بشرح اآلن .ستقوم

هو كالس فإن أخر سأشرح بكالم للكمبيوتر تقول أنك أي بالكائن الخاصة الخريطةالفالني الكائن ..لك

الذي المكان وهو بالكائن الخاص الشرح هو الكالس فإن iأيضا اخر بكالم فيه أي تضعوالدوال المتغيرات وهي معين بكائن الخاصة والخصائص .األساليب

والدوال فيصبح المتغيرات من مجموعة عن عبارة هو اآلن .الكالس

أقوم الكالس هذا وكائن ومن نوكيا لجوال كائن مثل أريدها التي الكائنات بتعريفقمت ألني اريكسون كالس لجوال كلمة طريق عن الجوال كائن .بشرح

الكائن لمواصفات شرح هو كالس أن .أي

Object-Oriented Programming Gahwah

Page 18: Object oriented programming

الثامن : الدرس

: ماهية و الكائن ؟ new إنشاء

نوع : من كائن أنشئ كيف هنا السؤال iإذا Mobil ؟

متغير طريق عن تمثيله يتم كائن كل الجواب

i أيضا وماذا ..طيب

كلمة أستخدم فإنني كائن أي new وإلنشاء

بإسم متغير بعمل وبعد nokia نقوم الكائن يمثل هنا إستخدمت وهو ذلكالكالس new الكلمة من جديد كائن أنشئ أقول كأنني موبايل وهنا

المتغير أصبح كائن nokia اآلن عن عبارة Mobil نوعه هو

بعد الكائن الكائن : استخدام لمحتويات الوصول طريقة إنشائه

أن iسابقا ذكرنا كلمة لقد بإستخدام رأينا كما يتم الكائن ..new إنشاء

بإسم كائن أنشأنا هو nokia ولقد هنا السؤال الكائن اآلن أستخدم nokia كيف؟

الكالس شرحت عندما فأنت بساطة بكل كائن Mobil الجواب أي تقول فأنتهما يتم دالتين على سيحتوي فإنه الكالس هذا من و Connect إنشائه

DisConnect هما ومتغيرين color و. company

فإن هما nokia إذا دالتين على متغيرين DisConnect و Connect سيحتوي والكائن company و color هما أو المتغير ألن كائن هو nokia والسبب عن عبارةالنوع Mobil من

هو اآلن السؤال في طيب الموجودة والمتغيرات الدوال لهذه أصل كيفمتغير) ؟ nokia (كائن

الـ أو الكائن بمعامل مايسمى بإستخدام هو وهو Object Operator الجوابكالتالي سهم شكل عن عبارة

> -

إنشاء بعد فإنني أخر بكالم سأقوم أي المتغير الكائن شكل يليه بإستخداممن يليه السهم الكائن ودوال محتويات متغيرات

على احتوى الذي الجزء أنهينا هنا : مايلي إلى

Object-Oriented Programming Gahwah

Page 19: Object oriented programming

class استخدام 1 -Variables استخدام 2 -new استخدام 3 - - < استخدام 4 -

األشياء عالم األربعة وهذه إلى دخولك بداية ستكون التي هي المذكورةالله الكائنات ..بإذن

التاسع : الدرس

الوراثة : مبدأ

هو ألنها الوراثة األخريات، البرمجة لغات بين العليا المكانة لها اللغة، مايجعلتمكن األشياء ببساطة عن اإلنسان يفكر كما األشياء في التفكير من الحاسب

نقترب إنا حوله، . التي أكثر أكون كي فيه نحن ما الحاسب يفهم عصر منالمثال خذ الوراثة، عن iالتالي وضوحا :

اكتساب :الوراثة إمكانية واساليب "جديد Class هو هو Class "خصائص آخرإليه ينتمي . باألصل

: مثالClass جوال Nokia : من مفاتيح Class يرث لوحة له بأن يمتاز الذي جوال

. الحية لعب قابلية عليه ويزيد االتصال على . به snake وبالقدرة

Class من : أسد . Class يرث حيوان أنه عليه ويزيد يلد بأنه يمتاز الذي الثديياتمن وغيره . الزيادات مفترس

Class :من يرث يأكل Class الثدييات بأنه يمتاز الذي . الحيوان ويموت ويناميلد بأنه عليه . ويزيد

يأكل iأيضا األسد أن هذه من . ) نستفيد الحظ حيوان ألنه ويموت وينامشيء {{ {{ {{ حيوان ثديي أسد من . Object السلسلة

كالس Button: الزر من وأخذ componentيرث به التعامل يمكن بأنه يمتاز الذي . الفأرة على الضغط طريق عن اإلدخال يقبل بأنه عليه ويزيد منه . بيانات

كالس TextField :الكلمات حاوي من يمكن component يرث بأنه يمتاز الذيوأخذ به . التعامل لوحة طريق عن اإلدخال يقبل بأنه عليه ويزيد منه بيانات

. المفاتيح

شيء Component :كالس صف من . Object يرث ولكن بشيء يمتاز ال الذييمكن أنه عليه منه يزيد بيانات وأخذ به . التعامل

تلك طريق عن iجيدا تفهم قد الوراثة أن . األمثلة أعتقدشيء: كالس من يرث معين، كالس من يرث ال الذي الكالس .Object مالحظة

السلسة أعلى في يقع هو . الذي

لكل أن iأيضا المالحظ واحد Class من مباشر منه أب . يرث

Object-Oriented Programming Gahwah

Page 20: Object oriented programming

الوراثة من : الفائدة i صديقا جوال تخيل لديه . Nokia لك تريد نفسك وتخيل جوارك إلى جالس وهو

. فقلت أقاربك بأحد الـ: االتصال جوالك ممكن سوف Nokia له بالمنطق، ؟كذلك؟؟ أليس جواله يعطيك

قلت أنك الـ: ) تخيل جوالك تقل لم جوالك؟؟ ممكن أيضاNokia ،i)له بالمنطقجواله سيعطيك الـ Nokia زميلك جواله . Nokiaألن i إذا جوال عن عبارة هوبه االتصال . يمكنك

أنك : تخيل جوالك ممكن له عليك Seimens قلت يرد سوف iأيضا بالمنطق ؟جوال: لدي ليس Seimens .ويقول

يستخدم برنامج صنع تريد أنك تخيل والمبدأ؟ العالقات هذه فهمتم i هل جواال : يكفي. بل الجوال، نوع ذكر إلى iمضطرا لست لك يقول المنطق إن لالتصال

. أن . أعطيت فأيما االتصال سوى تريد ال فإنك العمل لبدأ iجواال تريد أنك تذكرأنواع مشاكل من أي بدون سيعمل فبرنامجك الجواالت . من

مجموعة به صندوق لديك أن Collection i تخيل معينا iترتيبا مرتبة األقالم مناألقالم وتتبع معرفة خالله من . تستطيع فلن iمثال األكبر إلى األصغر من

. مرقم يكون قد الترتيب هذا نوعية تعرف لم إن سلسلة ArrayList يضرك أو ، LinkedList أو ، Stack أو Queue متجه أو Vector أو غيرها دام. أو فما غيرها

مجموعة ال Collection أنها بأخرى أو بطريقة فيه البحث ستستطيع فإنك ( . وسيلة على تنادي أو iأحدا تأمر أن تستطيع بذلك فإنك لمعرفتها داعي

Methodمجموعة: " وتقول الصندوق بهذا يوجد األقالم، Collection له منأخضر بقلم تأتيني أن فإن." الرجاء المجموعة، لنوعية ذكرك عدم الحظ اللون

فإنه هو وال لك ال معرفته مهم غير مجموعة ذلك ألنه فيه البحث سيستطيعCollection .

i أشكاال رص تريد أنك مصفوفة تخيل في أو Array هندسية رسمها ليمكنك . تصبح بهذا بعد فيما بينها (. المقارنة بوضع ) فتأخذ شكل نوع من المصفوفة

من وغيرها والمعين والمثلث والدائرة . المربع المصفوفة تلك في األشكال . رسمها أردت ثم ومن أشكال جميعها ألنها بذلك بأس أحد فال من فطلبت

. : غير فمن المصفوفة بهذه التي األشكال ارسم له وقلت ذلك الرسامينشكل ألنه والمعين شكل، ألنها والدائرة شكل، ألنه المربع سيرسم التعقيد،

إلى . وما المربع. رسم منه الطلب تستطيع كما شكل أي سيرسم فهو ذلكذلك له بذكرك فقط : منها بهذه التي المربعات جميع ارسم له فتقول

. ضير فال األشكال من تتكون التي i المصفوفة أيضا هذا . في

ومفاهيمها الوراثة عن اتضحت الفكرة أن األمثلة، بهذه من أعتقد أنها وكيفالمطورين بين محبوبة الشيئية البرمجة يجعل .ما

سؤال عندي طيب

الـ يشتق الـ Method هل Object منالـ هل الـ Object و من Class يشتق

يكون الترتيب Class - Object - Method تنازليا يعنى

السريعة :اإلجابة

Object-Oriented Programming Gahwah

Page 21: Object oriented programming

بيدك : Objectالـ التي الفأرة مثل موجود شيء عن . عبارة

عن : Classالـ عبارة بيدك الذي الشيء نوع iمثال للشيء، نوع عن شيء عبارةفأرة نوع . من

عمله : Methodالـ يستطيع الزر . Objectال عمل على الضغط يمكنك iمثال للفأرة . األيسر

بالتفصيل :االجابة

التركيز نحو البرمجة علم في التطوير كائنات أتى أو أشياء البيانات )علىObjects ) أصناف إلى تصنف بدورها أن Classes والتي من أي أصناف هناك

سلوكه منها ولكل تحدده methods الكائنات التي البيانات خدماته بالضبط أوالمصرفية . الحسابات مثال لنأخذ هويته تحدد :أي

عندنا يكون أن كائنات فيمكن نعتبرها والتي المصرفية الحسابات من الكثيرobjects نفس تحت تندرج كلها حساب ولكن هو الذي الصنف أو المفهوم

الحسبات Class مصرفي ماهية يحدد المفهوم هذا ناحية حيث من المصرفيةعملها وكيفية .بياناتها

الصنف هنا به Class من يتحدد مفهومها عن تصور أو الكائنات عن نموذج هوبيانات ماهيتها نوع أضفنا نكون الصنف وبتعريف عليها تطبق التي والخدمات

البرنامج إلى البيانات جديد ناحية من كامل كمفهوم عليه العمل يمكنبه المتعلقة والخدمات

ذلك الكائنات وبعد أو األشياء انشاء عملية لل objects تتم classes التابعةمن عندنا ما مثل بحسب بياناتها قيم بالضبط ونحدد وفعلية واقعية كائنات

كلها مصرفية حسابات عدة فعلية انشاء بقيم المحددة البيانات نفس مثل لهااألول : 1000001رقم: الحساب : الرصيد خالد، العميل اسم ،1000 ،...

: رقم الثاني : ،1000002الحساب : الرصيد علي، العميل ...، 2000اسم : رقم الثالث العميل 1000003الحساب اسم ، : : الرصيد ...، 1500محمد،

بعد الحقا أو إنشائها عند تحدد الكائنات بيانات خالل طبعا من إنشائهابانيات أو التي constructors مشيدات الخدمات أو توفرها الفئة

بين العالقة وضحنا نكون Object and Class هنا

رسائل ) أما سلوكيات، خدمات، دوال، نهج، عن methods( الطرق عبارة فهيالـ توفرها Class خدمة

Object-Oriented Programming Gahwah

Page 22: Object oriented programming

The End

Object-Oriented Programming Gahwah