18
٥٩ ا ا ا ا ا (Introduction to Object Oriented Programming (OOP)) ﺍﻷﻫﺩﺍﻑ: ﺒﻨﻬﺎﻴﺔ ﻫﺫﺍ ﺍﻝﻔﺼل ﺴﻴﻜﻭﻥ ﺒﺈﻤﻜﺎﻨﻙ: - ﺘﺤﺩﻴﺩ ﻤﻔﻬﻭﻡ ﺍﻝﻜﺎﺌﻥ(Object) ﻓﻰ ﺍﻝﺒﺭﻤﺠﺔ ﺍﻝﺸﻴﺌﻴﺔ. - ﻤﻌﺭﻓﺔ ﺍﻝﻔﺭﻕ ﺒﻴﻥ ﺍﻝﻜﺎﺌﻥ(Object) ﻭﺍﻝﺨﺎﺼﻴﺔ(Property) ﻭﺍﻝﻭﺴﻴﻠﺔ(Method) ﻭ ﺍﻝﺤﺩﺙ(Event) ﻭ ﺍﻝﺘﺼﻨﻴﻑ ﺃﻭ ﺍﻝﻔﺌﺔ(Class) . - ﻤﻌﺭﻓﺔ ﺍﻝﻔﺭﻕ ﺒﻴﻥ ﺍﻝﺘﻐﻠﻴﻑ(Encapsulation) ﻭ ﺍﻝﺘﻭﺭﻴﺙ(Inheritance) . ٤ - ١ ﻤﻘﺩﻤــ: ﺘﺘﻌﺩﺩ ﻝﻐﺎﺕ ﺍﻝﺒﺭﻤﺠﺔ ﺍﻝﺘﻰ ﺘﻡ ﺘﻁﻭﻴﺭﻫﺎ ﺤﺘﻰ ﺍﻝﻴﻭﻡ. ﻭﻜل ﻭﺍﺤﺩﺓ ﻤﻥ ﻫﺫﻩ ﺍﻝﻠﻐﺎﺕ ﺘﻌﺩ ﻤﻨﺎﺴﺒﺔ ﺃﻜﺘﺭ ﻤﻥ ﻏﻴﺭﻫﺎ ﺤﺴﺏ ﻁﺒﻴﻌﺔ ﺍﻝﺘﻁﺒﻴﻕ ﺍﻝﺫﻱ ﻴﺘﻡ ﻤﻥ ﺃﺠﻠ ﻜﺘﺎﺒﺔ ﺍﻝﺒﺭﻨﺎﻤﺞ ﻓﻬﻨﺎﻙ ﻝﻐﺎﺕ ﺘﻨﺎﺴﺏ ﺍﻝﺘﻁﺒﻴﻘﺎﺕ ﺍﻝﻬﻨﺩﺴﻴﺔ، ﻭﺃﺨﺭﻯ ﺘﻨﺎﺴﺏ ﺍﻝﺘﻁﺒﻴﻘﺎﺕ ﺍﻝﺘﺠﺎﺭﻴﺔ ﻭﻫﻜﺫﺍ. ﻭﻝﻜﻥ ﺍﻝﺴﻤﺔ ﺍﻝﻤﺸﺘﺭﻜﺔ ﻝﻤﻌﻅﻡ ﻫﺫﻩ ﺍﻝﻠﻐﺎ ﻤﺜل) BASIC , FORTRAN , PASCAL , COBOL, C ( ﻫﻭ ﺇﻨﻬﺎ ﺘﺴﺘﺨﺩﻡ ﺍﻷﺴﻠﻭﺏ ﺍﻝﺘﻘﻠﻴﺩﻱ ﻝﻠﺒﺭﻤﺠﺔ. ﻭﻫﺫﺍ ﺍﻷﺴﻠﻭﺏ ﻴﻌﺘﻤﺩ ﻋﻠﻰ ﺍﻝﺘﺤﺩﻴﺩ ﺍﻝﺩﻗﻴﻕ ﻝﺘﺭﺘﻴﺏ ﺘﻨﻔﻴﺫ ﺍﻷﻭﺍﻤﺭ ﻭﺇﺠﺭﺍﺀ ﺍﻝﻌﻤﻠﻴﺎﺕ. ﻭﻴﺤﺩﺩ ﻓﻜﺭ ﺍﻝﻤﺒﺭﻤﺞ ﻤﺎ ﻴﻨﺒﻐﻲ ﻋﻤﻠﺔ ﻜﺎﺴﺘﺠﺎﺒﺔ ﻝﻤﺎ ﻴﺭﻴﺩﻩ ﻤﺸﻐل ﺍﻝﺒﺭﻨﺎﻤﺞ) User . ( ﺃﻤﺎ ﻓﻲ ﺍﻝﺒﺭﻤﺠـﺔ ﺍﻝﺸﻴﺌﻴﺔ(OOP) ﻓﺈﻥ ﺍﻷﻤﺭ ﻤﺨ ﺘﻠﻑ ﺤﻴﺙ ﺃﻥ ﺘﻨﻔﻴﺫ ﺍﻷﻭﺍﻤﺭ ﻻﻴﺘﺒﻊ ﺍﻝﺘﺴﻠﺴل ﺍﻝﻤﻨﻁﻘﻲ. ﻓﻠﻡ ﻴﻌﺩ ﻋﻠﻰ ﺍﻝﻤﺒﺭﻤﺞ ﺃﻥ ﻴﺤﺩﺩ ﺃﺴﻠﻭﺏ ﺍﻻﺴﺘﺠﺎﺒﺔ ﻝﻁﻠﺒﺎﺕ ﺍﻝﻤﺸﻐل. ﹰ ﻤﻥ ﻭﻝﻜﻥ ﺒﺩﻻ ﻫﺫﺍ ﻓﺈﻥ ﺍﻝﻤﺸﻐل ﻴﺴﺘﻁﻴﻊ ﻋﻥ ﻁﺭﻴﻕ ﺍﻝﻀﻐﻁ ﻋﻠﻰ ﺃﺯﺭﺍﺭ ﻤﻌﻴﻨﺔ ﺃﻭ ﻤﺭﺒﻌﺎﺕ ﻋﻠﻰ ﺍﻝﺸﺎﺸﺔ ﺃﻥ ﻴﺤﺼل ﻋﻠﻰ ﺍﺴﺘﺠﺎﺒﺔ ﻝﻤﺎ ﻴﺭﻴﺩﻩ. ﻭﺫﻝﻙ ﻷ ﻥ ﻜل ﻓﻌل ﻤﻥ ﺍﻝﻤﺸﻐل ﻴ ﺘﺴﺒﺏ ﻓﻲ ﺤﺩﻭﺙ ﺤﺩﺙ ﻤﻌﻴﻥ(Event) ﻭﻫﺫ ﺒﺩﻭﺭﻩ ﺩﻓﻊ ﺒﺭﻨﺎﻤﺞ ﻤﻌﻴﻥ ﺃﻭ ﺠﺯﺀ ﻤﻥ ﺒﺭﻨﺎﻤﺞ ﺇﻝﻰ ﺍﻝﻌﻤل ﻋﻠﻤﺎ ﺒﺄﻥ ﻫﺫﺍ ﺍﻝﺒﺭﻨﺎﻤﺞ

الفصل الرابع: مقدمه عن البرمجة الشيئية

  • Upload
    makkawi

  • View
    46

  • Download
    18

Embed Size (px)

DESCRIPTION

Visual Basic.Net مقدمة عن البرمجة بأستخدامIntroduction Using Visual Basic to Programming Basic.NETتم الحصول على هذا الكتاب من موقع وزارة التربية و التعليم بمصرhttp://services.moe.gov.eg/learn_visual.htmlمقدمة عن البرمجة الشيئيةObject Oriented Programming (OOP)

Citation preview

Page 1: الفصل الرابع: مقدمه عن البرمجة الشيئية

٥٩

ا��� ا��ا��

��� �� ا����� ا�����

(Introduction to Object Oriented Programming (OOP))

:األهداف

:هذا الفصل سيكون بإمكانك بنهاية

.الشيئية البرمجةفى (Object) تحديد مفهوم الكائن -

والوسيلة (Property) والخاصية (Object) الكائن معرفة الفرق بين -

(Method) و الحدث(Event) الفئةو التصنيف أو (Class) .

. (Inheritance)و التوريث (Encapsulation)معرفة الفرق بين التغليف -

: ةمقدمــ١- ٤

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

ولكن السمة المشتركة . وأخرى تناسب التطبيقات التجارية وهكذا ، تناسب التطبيقات الهندسية هو إنها تستخدم ) BASIC , FORTRAN , PASCAL , COBOL, C( مثل تلمعظم هذه اللغا

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

)User . (

تلف حيث أن تنفيذ األوامر اليتبع التسلسل األمر مخفإن (OOP) الشيئية البرمجـة أما في ولكن بدالً من . فلم يعد على المبرمج أن يحدد أسلوب االستجابة لطلبات المشغل . المنطقي

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

(Event) هذا البرنامج بأن علماًدفع برنامج معين أو جزء من برنامج إلى العمل يبدوره اوهذ

Page 2: الفصل الرابع: مقدمه عن البرمجة الشيئية

٦٠

فمثالً إذا .مكتوباً مسبقاً ومرتبطاً بهذه الحدثأو الجزء المراد تشغيله يكون ضغط المشغل على زر معين إلجراء عملية حسابية فإن ضغط هذا الزر ا وهذ ) Button's Click Event ( " حدث الضغط على زر الحساب" يتسبب في حدوث

.جعل البرنامج يقوم بتنفيذ الجزء الخاص بإجراء العملية الحسابية ي بدوره

: )الشيئية البرمجة(بالكائنات البرمجة ٢-٤

خـواص وكـل منهـا لـه (Objects) الكائنـات سنتعامل كثيراً مع Visual Basicفى

(Properties) وسائل و(Methods) أحداث و(Events) وكلObject فئـة يتبع

. (Class) ةمعين

: كل مفهوم على حدة سنقوم بشرحواآلن

(Object) الكائن ١- ٢- ٤

بصورة دائمة في (Objects)له وجود، وعلى هذا فإننا نتعامل مع الكائنات شيءهو

:وأمثلة على بعض الكائنات.حياتنا اليومية

.القلم الحبر - .القلم الرصاص -

.الكمبيوتر جهاز -

من الممكن أن (Object)، وأي كائن (Objects)أنت وأنا عبارة عن كائنات حتى

يكون جزء من كائن آخر، وأيضاً الكائن الواحد يمكن أن يتكون من عدد من الكائنات

(Objects). مفاتيح وفأرة وقرص صلب فمثالً جهاز الكمبيوتر يحتوي على لوحة

.يحتوى على عدة كائنات أخرى أن الكمبيوتر كائن وشاشة، أى

Page 3: الفصل الرابع: مقدمه عن البرمجة الشيئية

٦١

بصورة (Objects)نتعامل مع الكائنات وجود حيثهو شيء له (Object)الكائن

يمكن أن يتكون من عدد من Object)(دائمة في حياتنا اليومية، والكائن الواحد

(Objects)الكائنات

(Object Oriented Programming(OOP)) الشيئيةوفي لغة البرمجة

...... (Dialog Boxes)وصناديق الحوار (Windows)يمكن اعتبار النوافذ

).١- ٤(نظر شكل ، ا)Objects(الخ، أمثلة لكائنات

)Properties( الخصائص ٢- ٢- ٤

تميزه وتحدد مالمحه مثل اسمه، معينة (Properties)خصائص (Object)لكل كائن

.وحجمه، ولونه، ومكانه

:هذه الكائنات وخصائصهابعض ل التالية مثلةاألو

أ���� ���� ا���ت ١- ���٤

��� ا���� ا������ ن#"ة � �ز ا��

Page 4: الفصل الرابع: مقدمه عن البرمجة الشيئية

٦٢

(Value) قيمة الخاصية (Property) الخاصية (Object) الكائن

االســـــــم القلم

اللـون

قلم

أزرق

السيارة

االســـــــم

اللـون

عدد أبوابها

سـيارة

أبيض

٤

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

:األبواب التالية، والتي من خاللها يتم كتابة خاصية الكائن كاآلتي

ObjectName.Property = Value

:يتم التعامل مع هذه الخاصية بالشكل التاليففى سبيل المثال

MyPen.Color =Blue

Blueوقيمتها هى Colorفهى الخاصيةأما MyPenحيث أن الكائن هو

و����� ��� ا���ت ٢- ���٤

��رة أ��م

Page 5: الفصل الرابع: مقدمه عن البرمجة الشيئية

٦٣

.تحدد شكل وسمة الكائن وكل كائن له مجموعة من الخصائص (Property):الخاصية

)Methods( لوسائلا ٣- ٢- ٤

).Object( مصاحبة للكائن هي الوظائف واألفعال التي تكون

:مثال

.لونها أبيض وتسير في الشارع (Car)سيارة

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

:والتي من خاللها يتم كتابة خاصية الكائن كاآلتيبالتفصيل في األبواب التالية،

ObjectName.Method

: ويتم التعامل مع هذه الوسيلة بالشكل التالي

Car.Start()

Car.Stop()

رة ٣- ���٤ �� )��ء) آ���)���� ا��رع ) �� � )و��"!( ��

�رة ����

Page 6: الفصل الرابع: مقدمه عن البرمجة الشيئية

٦٤

هو النموذج (Object)إذا فرضنا وجود كائن Visual Basicوفي لغة

)Form1 ( وله وسائل مثلClose وClear فإننا نشير إليها هكذا :

Form1.Close()

Form1.Clear()

أي هي أفعال محددة .هي وصف لسلوك معين مصاحب للكائن (Methods):الوسائل

).Object( لكل كائن مسبقاً

)Events( ألحداث ا ٤- ٢- ٤

تقع عليه ويستجيب لها، حيث يمكن للمبرمج (Events)له أحداث معينة ) Object(كل كائن

.وضع مجموعة معينة من األوامر التي يتم تنفيذها عند وقوع حدث معين

ذج ٤- ���٤ �) . ��(Close) و���� ) آ��

ذج�

Page 7: الفصل الرابع: مقدمه عن البرمجة الشيئية

٦٥

:مثال

لتفادى األمطار بغزارة فأسرعوأمطرت السماء عليه اسمه أحمد إنسان يمشى في الشارع

.ارتدى مالبس ثقيلةو

.إنسان: (Object)الكائن

.االسم: (Property)الخاصية

.أحمد: (Value) قيمة الخاصية

.األمطار سقوط: (Event) الحدث

يرتدى ، يسرع ، يمشى :(Methods)الوسائل

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

.هى عباره عن وسائل اإلسراع لتفادي األمطار وارتداء مالبس ثقيلة

نافـذة : فمثالً Visual Basicواألحداث أيضاً تظهر بوضوح على الكائنات الموجودة في لغة

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

أو ضغط أي مفتاح من لوحة المفاتيح على النافذة ويسمى هذا " MouseMove"هذا الحدث

(Form)الخ، وكل هذه األحداث تستجيب لها نافذة النموذج " ......... KeyPress"الحدث

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

.هو عبارة عن الفعل الذي يقع على الكائن ويستجيب له): Event(الحدث

Page 8: الفصل الرابع: مقدمه عن البرمجة الشيئية

من حيث

(Events).

��ى ا���ت Volume

Base ت� �� ا���ت

Play

Stop

Play Music ص�ت ا���س���

���ر�� ��� ا����ذج و��ز ا������

٦٦

�ز آ���� ٦- ���٤ �.

من حيث (Cassette)وجهاز الكاسيت (Form1)مقارنة بين النموذج

(Properties) و الوظائف(Methods) واألحداث(Events)

و� ا����ر��

��� Size

Color ��ن

��ى ا���ت

ت� �� ا���ت

Methods إ��ق Close

Hide إخ��ء

ت#"�!

إی��ف

Events رة(���ص�ت ا���س��� Click ا��"* (

���ر�� ��� ا����ذج و��ز ا������ ٥- ���٤

مقارنة بين النموذج

(Properties)الخصائص

:تدريب

و� ا����ر��

"#�$%

Properties

Methodsو��#�

Events أ)'اث

Page 9: الفصل الرابع: مقدمه عن البرمجة الشيئية

٦٧

يعتبر جهاز الكاسيت من األجهزة المهمة الموجودة في البيت والذي يمكننـا

وكذلك عمل إيقاف مؤقت لشريط معين ، تشغيله وسماع األشرطة المختلفة

كما أنه يصدر منه صوت قوي نسمعه بوضوح، ولو فرضنا أن جهاز الكاسيت لونه أسـود

سم ، فهل يمكن عزيزي الطالب اإلجابة على األسـئلة التاليـة ٢٠ ×سم ٤٠وحجمه تقريباً

:مات اآلتيةلاختيارك الكلمة المناسبة من بين الكأكمل مكان النقط ب

حدث -وسيلة -خاصية -كائن

.........................................هاز الكاسيت يعتبر ج -١ ................................تشغيل جهاز الكاسيت يعتبر -٢ ..................................إيقاف جهاز الكاسيت يعتبر -٣

...........يمكن اعتبار اإليقاف المؤقت لشريط الكاسيت -٤

............يعتبر الصوت الذي نسمعه من جهاز الكاسيت -٥ .....................................لون جهاز الكاسيت يعتبر -٦ ....................................حجم جهاز الكاسيت يعتبر -٧

s)e(Class الفئةمفهوم التصنيف أو ٥- ٢- ٤

هو عبارة عن قالب أو مخطط يتم منه إنشاء كائن معين، وهو يمثل جميـع الخصـائص

فهـو يمثـل وحـدة (Object)أما الكائن . والوظائف التي سوف يحتويها الكائن بعد ذلك

وهي التي تستخدم فعالً ألداء الوظائف المختلفـة (Class) ها من التصنيفمستقلة تم إنشاؤ

.(Class) للتصنيف

Page 10: الفصل الرابع: مقدمه عن البرمجة الشيئية

٦٨

علي الورق منزلونضرب لذلك مثاالً بالمهندس الذي يقوم بعمل تصميم ل

نزلحتوي علي جميع الخصائص والوظائف للمي ”Class“ويمثل هذا التصميم تصنيف

، وفي الواقع فإننا ال ”Object“مثل الكائنينفسه ف نزلسوف يتم إنشائه، أما الم ذىال

للسكن بالرغم ”Class“والذي يمثل تصنيف نزلللمالرسم الهندسي استخدامنستطيع

نستخدم فعلياً ولكننا سوف يتم إنشائهالذى نزليحتوي علي جميع خصائص الممن أنه

.”Object“ اًنزل و الذى يمثل كائنالمفي سكن ون

٧- ���٤ �� � � آ����ت �� إ���ء �� (Class)ر�� ��

Object

� � �رة ٨- ���٤ � �� إ���ء آ����ت (Class)ر�� ����.

(Objects)

Object

Page 11: الفصل الرابع: مقدمه عن البرمجة الشيئية

٦٩

و وظائف (Properties)على خصائص (Class)يحتوي التصنيف

وهي التي سوف يتضمنها بعد ذلك (Events)وأحداث (Methods)وسائل و

.أي كائن سوف يتم إنشاءه من هذا التصنيف

نا التابعة له دع (Objects) الكائناتو (Class) و لكى نوضح أكثر الفرق بين التصنيف

خر شهر رمضان آفي الكثيرون منا قاموا بعمل البسكويت. نأخذ قالب عمل البسكويت كمثال

في هذه الطريقة يقوم صانع البسكويت باختيار قالب ذو شكل . البسكويت وذلك باستعمال قالب

ومع كل . بالقالب اثم يقوم صانع البسكويت بفرد العجين ثم الضغط عليه) شجرة مثال ( معين

هنا نستطيع أن نقول أن قالب البسكويت هو الـ . ضغطة نحصل على بسكويته لها شكل القالب

Class .نستطيع أن نأكل القالب ولكننا نستعمله في صناعة البسكويت الذي بالطبع فنحن ال

(Instance)وعند صناعة البسكويت فان كل ضغطة على العجين تعطينا . Objectيمثل الـ

مل أنواع ومن البديهي أننا نستطيع أن نستخدم نفس القالب لع. (Biscuit Class)من الـ

ن نحصل على بسكويت بطعم نفس الشكل ، فنحن نستطيع أن كان لها مختلفة من البسكويت ، وإ

كما أن بعض البسكويت من الممكن أن يكون مغطى بالسكر . أو الليمون أو الشيكوالته الفانيليا

Biscuit Classمن Biscuit Object في البسكويت نستطيع أن نخلق . خر بالمربى وهكذا وآ

من Biscuit1ض الحصول على كائن يسمى لى العجين أما في البرمجة فبفربالضغط ع

Biscuit Class شير إلى الـ نمكن أن ن الممفProperties الخاصة بـBiscuit1 هكذا:

biscuit1.Taste = “Lemon”

biscuit1.Topping = “Jam”

:مم سبق يمكننا تلخيص ما سبق فى اآلتى

، (Objects)إلى وحدات تسمى كائنات فيها البرنامجيقسم :) بالكائنات البرمجة( الشيئيةالبرمجة لكل كائن خصائصه ووظائفه التي تميزه والتي تحدد بعد ذلك سلوكه، وتعتمد البرمجة الحديثة و

التي يتم إنشائها في (Form)بشكل أساسي علي هذا النوع من البرمجة فمثالً نالحظ أن النافذة وهذا الكائن له خصائص تميزه مثل اللون والعرض واالرتفاع ولون Objectالبرنامج تمثل كائن

وظائف مثل وظيفة إغالق النافذة (Form) الكتابة إلي غير ذلك من الخصائص، كذلك للنافذة Close أو إظهارهاShow أو إخفائهاHide ، كذلك كل شيء يتم وضعه علي النافذة يمثل كائن

(Object) له خصائص ووظائف.

Page 12: الفصل الرابع: مقدمه عن البرمجة الشيئية

٧٠

:بتدري

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

.من الخشب والزجاج وبعض األدوات األخرى

:أكمل مكان النقط مستخدماً الكلمات اآلتية لجعل الجملة صحيحة

Class – Event – Property – Object

...................ما قام أحمد بتصميمه يعتبر - ١ ..................أما المكتبة التي قامت الورشة بإنتاجها تعتبر - ٢

: الشيئية البرمجةفى الهامةبعض المصطلحات ٣- ٤

)Encapsulation(مفهوم التغليف ١- ٣- ٤

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

أحقيةها بصالحيات معينة فقط، والصالحيات تعني بعض بحيث يتم الوصول إليالكائن

.… , Public , Privateالوصول لهذه المعلومات من خالل الكائن ومن أمثلتها

: أمثلة

يوجد بعض من األدوية على شكل كبسوالت وهى تستخدم للعالج وقد تحتوى هذه -١

وأعشاب طبيعة ويستخدمها المرضى دون معرفة طبيعة ةالكبسوالت على مكونات كيميائي

. تها امحتوي

البيانات انتقالوال كيفية لذي نستخدمه ال نعرف تفاصيل عملهجهاز الهاتف المحمول ا -٢

األزرار المسموح لنا بالتعامل معها، ذلك فنحن نستخدمها ونتعامل فقط مع، ومع داخله

من حيث عدم ظهور المعلومات (Encapsulation)وهي بذلك تمثل مفهوم التغليف

األزرار والواجهة الخارجية فقط له واستخدامالداخلية لطريقة إجراء المكالمة علي التليفون

.الخ... وهو المسموح لنا بالتعامل معه وكذلك التلفاز

Page 13: الفصل الرابع: مقدمه عن البرمجة الشيئية

٧١

��ن ����ل�

يمكنك معرفة أو تعديل بعض و بالتالى Buttonيمكنك إنشاء زر الشيئية البرمجةأما فى

ويمكنك تنفيذ بعض وسائله Name, Text, BackColor, Background colorخواصه مثل

يمكنك إضافة ولكن ال و يمكنك كتابة برنامج يتم تنفيذه عند حدوث حدث Show, Hideمثل

. جديدةخواص

يعني إخفاء بيانات داخل الكائن بحيث ال يتم : )Encapsulation(مفهوم التغليف

الوصول إليها إال بصالحيات معينة

):Inheritance(مفهوم التوريث ٢- ٣- ٤

أى التصنيف Child) أو Derived Class( معين ) Class(تصنيف يقصد بالتوريث أن

التصنيف Parent)أو Base Class (آخر تصنيفرث خصائص ووظائف وأحداث المشتق ي

الجديد يكون لديه جميع خصائص ووظائف وأحداث التصنيف، وهذا ) األب(األساسى أو

فإن الغرض الحقيقةفى .اإلضافيةاألب باإلضافة إلى خصائصه ووظائفه وأحداثه تصنيف

الحاجةتم تصميمه من فئات و التعديل فيها حسب ما استعمالالرئيسى من التوريث هو إعادة

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

� ٩- �٤ ��� ال��� � أ��

��ن ����ل '&%ز ��%ز آ"�!ت أدوی��

Page 14: الفصل الرابع: مقدمه عن البرمجة الشيئية

٧٢

:أمثلة

يمكن من خالله استخراج تصميم آخر يعـد (Base Class)الرسم الهندسي لعمارة يمثل -١

كامتداد للرسم األول، أي أن الرسم المستخرج يحتوي على جميع خصائص الرسـم األول

مضافاً إليها بعض المالمح الجديدة كما نري في الشكل التالي، وهذا يوفر علينـا بالتأكيـد

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

وتعتبر هذه النافذة (Window)إن برامج الكمبيوتر التي تستخدمها تعمل داخل نافذة -٢

له الخصائص المشتركة والموجودة في كل النوافذ األخـرى مثـل شـريط مستقالً اًكائن

لخ، والنوافذ األخرى تـرث هـذه الخصـائص إ... وأزرار التصغير والتكبير العنوان

العامة مضافاً إليها خصائص تميز كل كائن جديد على حدة، فمـثالً نافـذة المسـتعرض

(Internet Explorer) ترث الخصائص العامة للنوافذ كما قلنا من قبل، باإلضافة لـذلك

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

له الخصائص العامة للنافـذة wordالنافذة الستعراض صفحات الويب، وكذلك برنامج

كن من خالله كتابة النصـوص باإلضافة إلى أنه يحتوي على خصائص أخرى بحيث يم

.وتعديلها باعتباره برنامج محرر نصوص

١٠- ���٤ �� ��ث ��

���

Page 15: الفصل الرابع: مقدمه عن البرمجة الشيئية

٧٣

) ( Derivedمعين ) Class(يقصد بالتوريث أن تصنيف ) Inheritance(مفهوم التوريث

وهذا التصنيف الجديد يكون لديه جميع ) (Baseيرث خصائص ووظائف تصنيف آخر

.إلضافيةاساسى باإلضافة إلي خصائصه ألالتصنيف اخصائص

Page 16: الفصل الرابع: مقدمه عن البرمجة الشيئية

٧٤

أسئلة ٤.٤

:السـؤال األول

:أمام العبارة الخطأ) × ( أمام العبارة الصحيحة وعالمة خطأ ) √( ضع عالمة صح

(.....) ).Object(من الكائن ) Class(يتم إنشاء التصنيف - ١

(.....) .كائناتمكون من عدة (Object) يعتبر جهاز الكمبيوتر كائن - ٢

(.....) .القلم (Methods)يعتبر لون القلم أحد وظائف - ٣

(.....) ).Event( اًتشغيل جهاز الكاسيت يعتبر حدث - ٤

(.....) .تحدد شكل وسمة الكائن (Properties)خصائص الكائن - ٥

وأحداث (Methods)وظائف و (Properties)يتميز الكائن بأن له خصائص - ٦

(Events). (.....)

(.....) ).Class(من التصنيف ) Object(يتم إنشاء كائن - ٧

(.....) .(Class)بيانات التصنيف إلخفاء يستخدم (Encapsulation)التغليف - ٨

(.....) .تصنيفاً آخر فإنه يرث الخصائص فقط (Class)عندما يرث تصنيف - ٩

(.....) .(Class)حماية بيانات التصنيف (Encapsulation)من أهداف التغليف -١٠

Page 17: الفصل الرابع: مقدمه عن البرمجة الشيئية

٧٥

:السـؤال الثاني

:أكمل مكان النقط مستخدماً الكلمات اآلتية لجعل الجملة صحيحة

Object – Event – Property – Method – Class – Encapsulation -

Inheritance

.............................يعتبر الضغط بمؤشر الفأرة داخل النافذة - ١

.............................يعتبر عرض النافذة - ٢

.............................الضغط على مفتاح من لوحة المفاتيح داخل النافذة يعتبر - ٣

...............................الخصائص والوظائف التي يأخذها االبن من أبيه تًعتبر - ٤

.................................................................الذهاب إلى المدرسة يعتبر - ٥

....................................................تُعتبر كمية المياه الموجودة في بحيرة - ٦

.............................الرسم التخطيطي لجهاز التسجيل الموجود بالكتالوج يعتبر - ٧

.(Class)إخفاء للبيانات داخل التصنيف ............................. يعتبر - ٨

Page 18: الفصل الرابع: مقدمه عن البرمجة الشيئية

٧٦

:السـؤال الثالث

:أكمل الجدول التالي

المقصـــود بـه المصـطلح

Class .......................................................................

.......................................................................

Property .......................................................................

.......................................................................

Method .......................................................................

.......................................................................

Event .......................................................................

.......................................................................

Object .......................................................................

.......................................................................

Encapsulation .......................................................................

.......................................................................

Inheritance .......................................................................

.......................................................................