انت هنا الان : شبكة جامعة بابل > موقع الكلية > نظام التعليم الالكتروني > مشاهدة المحاضرة

المحاضرة الثامنة

Share |
الكلية كلية تكنولوجيا المعلومات     القسم قسم البرامجيات     المرحلة 3
أستاذ المادة مهند محمد جاسم الياسري       12/29/2011 4:16:42 PM
Object – Oriented Concepts and
Principles

- Introduction .
- ما هو الــModule ؟
- The Object .
- Object – Oriented Concepts :

1 - Classes and Objects
2 – Attributes
3 – Operation , Methods , and Services
4 – Messages
5 – Encapsulation , Inheritance , and Polymorphism


مقدمــة: Introduction
إن معظم المجلات الخاصة بالحاسوب تقترح كون أسلوب الـ OO كان اكتشاف مفاجئ و جديد في أواسط الثمانينيات، و كتغير ثوري للأسلوب المهيكل المشهور.
و لكن هذا الوضع ليس هو الواقع، و إنما نظرية الـ Modularity التي كانت تحت الدراسة في السبعينيات و الثمانينيات كانت هي الأساس للتطور المنطقي للـ Object. إن الـ Object–Oriented كمفهوم قدم في نهاية عام 1966 في لغة Simula 67 . ولكن في ذلك الوقت كانت التقنية متأخرة جدا" للاستخدام عمليا" لهذا المفهوم فضّل ساكنا" حتى نهاية الثمانينيات حيث قد تم إعادة اكتشافه من جديد في سياق نظرية الـ Modularity .

What is a Module ?

عندما يحوي برنامج كبير على جزء واحد فقط من الشيفرة فان عملية ادامة هذا البرنامج ستكون أشبه بالكابوس بالنسبة للمبرمج. لذلك وكحل لهذه المشكلة يجب إن نقسّم هذا البرنامج إلى عدد من الأجزاء الصغيرة، تسمى " Module " .
إن الـ Module سلسلة مرتبطة من الايعازات الخاصة بالبرنامج، محددة بواسطة عناصر تسمى عناصر التحديد مثل (begin…..end ) ، وله اسم يعرّفه. حيث إن الأجراء Procedure، الوظيفية Function، و الكيان Object جميعها Module .
و لغرض فهم أهمية الـ Module سنأخذ المثال التالي لبناء أو تصميم حاسوب (وحدة حساب ومنطق ALU، وحدة ازاحة Shifter، مسجلات Registers ) باستخدام البوابات المنطقية (Not , Or , And). إن التصميم الناتج للحاسوب سيكون بالشكل:








حيث إن ثلاثة مكونات مرتبطة بطريقة بسيطة بعضها مع بعض

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





الأولى: استخدام جميع البوابات المنطقية الثلاثة في كل مكون ( أي كمثال إن وحدة الحساب و المنطق الـ ALU تحوي على بوابة الـ AND والـ OR والـ NOT ).












الثانية: استخدام واحد من البوابات المنطقية في كل شريحة ليكون هنالك ثلاث أنواع من الشرائح السيليكونية ( شريحة الـ AND و شريحة الـ OR و شريحة الـ NOT ) و يتم التوصيل بين هذه الشرائح الثلاث لا تمام نفس العمل المطلوب من الشرائح في الطريقة الأولى









إن الشكلين الأول و الثاني متساويان بالوظيفة أي يعملان بالضبط نفس الأعمال و لكن التصميم الخاص بهما مختلف بالخصائص. حيث إن الشكل الثاني صعب الفهم بشكل كبير نسبة إلى الشكل الأول. كذلك فان الصيانة في الشكل الثاني صعبة جدا" حيث إن عملية إيجاد مكان الخطأ شبه مستحيلة، بينما عملية صيانة الشكل الأول ستكون أسهل بكثير فتحديد الخطأ سيكون أسهل و ذلك بملاحظة أي من الشرائح السيليكونية تسليك سلوك خاطئ و بذلك سيكتشف الإخفاق و يتم إصلاح الشريحة أو بكل بساطة يمكن إبدالها بشريحة جديدة أما في البناء الموجود في الحالة الثانية سيكون إبدال الشرائح الثلاث أسهل. و أخيرا" إن الحاسوب المصنّع باستخدام الحالة الثانية سيكون من الصعب جدا" تطويره أو تحسينه على العكس من الحاسوب المصنّع باستخدام الحالة الأولى.
إن النقطة التي يسعى هذا المثال لإيصالنا لها هي انه علينا إن نصمم الـ Software بشكل يشبه الحالة الأولى ( هنالك اكبر عدد ممكن من العلاقات داخل كل شريحة سليكونية، و اقل عدد ممكن من العلاقات بين شريحة سيليكونية وأخرى). حيث إن الـ Module ممكن إن نعتبرها شريحة سيليكونية حيث بإمكانها إن تنجز عمل أو أكثر، وهي مرتبطة بـ Modules أخرى.
في هذه المرحلة سيكون من المهم التمييز بين المصطلحات الخاصة بالـ Module Context, Logic, Action) )



يجب الانتباه إلى إن تسمية الـ Module تتم على أساس الـ Action التي ينجزها و ليس على أساس الـ Logic أو الـ Context الخاص بالـ Module .

The Object
إن الكيان بكل بساطة هو الخطوة التالية في طرق تقدم الـ Software حيث انه يحتوي على جميع خصائص الطرق السابقات له بالإضافة إلى خصائصه هو:
Objects


Information Hiding


Abstract Data Type


Data Encapsulation


Module With High Cohesion & Low Coupling


Module

المادة المعروضة اعلاه هي مدخل الى المحاضرة المرفوعة بواسطة استاذ(ة) المادة . وقد تبدو لك غير متكاملة . حيث يضع استاذ المادة في بعض الاحيان فقط الجزء الاول من المحاضرة من اجل الاطلاع على ما ستقوم بتحميله لاحقا . في نظام التعليم الالكتروني نوفر هذه الخدمة لكي نبقيك على اطلاع حول محتوى الملف الذي ستقوم بتحميله .
الرجوع الى لوحة التحكم