M206
Object-Oriented Approach
أولاً: ماهي مادة M206 ؟
مادة تخصص في قسم IT من المستوى الثاني Level 2 ، تهتم ببرمجة أنظمة الكمبيوتر ..
وذلك بلغة برمجة Smalltalk ، وهي من أقدم اللغات التي تدعم Object-Oriented
رصيدها: 16 ساعة
تُــؤخذ على جزأين (أي نحتاج لإنهائها سنة دراسية كاملة)
مع العلم بأنه الجزء الأول يتم التسجيل به فقط في بداية السنة الدراسية ولا يمكن ذلك بالترم الثاني من كل سنة .
المادة تبدأ بشكل بسيط وسهل محببّ للنفس
لعرض مبادئ وأساسيات Object-Oriented
تعرض المعلومة بتدرج وسهولة .. وتكرر المعلومة بأكثر من موضع
حقيقة مؤلفي هذه المادة أبدعوا جدًا جدًا في تسلسل الأفكار
وأسلوب عرض الموضوع .. وتصميم بيئة برمجة خاصة بالمادة
والتي تدعم برمجة Smalltalk ، وطريقة شرح المنهج بحيث
يتخلل الشرح بعض الأسئلة والتمارين والتطبيقات ،
والتي يرفق حلها بآخر كل فصل بطريقة واضحة
مما يجعل تثبيت المعلومة أمر حتمي لمن يقرأ هذه الكتب .
وتعدّ مرجع هام وموسوعة علمية
تفتح وتسهل الطريق لمواد البرمجة التي تليها
مثل M301 و MT262 و CS490 .
ونصيحة حاولوا أن تسيطروا على مفاهيم هذه المادة
فهي تختصر لكم عناء وتعب المواد التي تليها ..
وفيما يلي تفصيل لما ورد بالمنهج .. وتقرير عام عن المادة :
ثانيًا: باكج (كتب وأدوات) هذه المادة :
يوجد لهذه المادة كتب أساسية وتسمى Blocks ،
وكتاب مرجعي ومصدر للمعلومات يسمى Course Book ،
(هذا الكتاب فقط مرجع للطالب وليس ضمن المنهج المقرر)
أ) الكتب الدراسية الرئيسية Blocks :
وهي الكتب الخاصة بالوحدات الدراسية ومواضيعها ،
وعددها 7 كتب (53 فصل Chapters) موزعة على الكورس بالكامل (البارتين)..
ويحتوي الجزء الأول من المادة على :
* عدد 4 كتب دراسية (Block I + Block II + Block III + Block IV)
الكتاب الأول Block I: Foundation ،
Chapter1: Introduction :
بهذا الفصل يعطي مقدمة عامة عن البرمجة ،
ثم يعطي نظرة عامة حول ما ستدرسه في الكورس ،
ومفاهيم ومسلّمات أساسية عن عالم Object ،
ثم يعرض تعاريف عامة مثل System, Application .. etc ،
وأهم مكونات ومواضيع المادة ، وشرح مبسط لبيئة
LearningWork والتي تعدّ بيئة تطبيق النشاطات البرمجية ،
Chapter2: :
هذا الفصل ليس له نسخة مطبوعة ولا الكترونية ،
وهو عبارة عن مشاهدة لجزء من شريط الفيديو
Chapter3: Using the Ne***rks :
هذا الشابتر ليس له نسخة مطبوعة ،
ولكن له نسخة الكترونية pdf يتم تحميلها من موقع المادة
ويتحدث عن الانترنت والايميل ، وكيفية عمل المؤتمرات الالكترونية
وطريقة استخدام برنامج FirstClass (برنامج شبيه بالمودل وليس مطلوب منا)
Chapter4: Object-oriented Applications :
في هذا الفصل يبدأ بتعريف أهم مبادئ وأساسيات
البرمجة التي هي من نوع Object-oriented
ويبدأ بترسية مفهوم كيفية التفكير وكأنك مصمم للبرنامج
والتقليل من التفكير وكأنك مستخدم له.
ثم يتعرض لأهمية GUI ومدى التأثير الذي أحدثته في تطور البرمجة
وتأثير مفهوم Objects وهو عبارة عن تصور البرنامج
وكأنه عبارة عن مكونات مرتبطة ومتفاعلة مع بعضها
وذلك عن طريق ارسال المسجات .
Chapter5: Introduction to Human-Computer Interaction :
هذا الفصل يشرح طريقة تواصل المستخدم مع الكمبيوتر
بمعنى أنه يهتم بتصميم واجهة البرامج وأهم الأساسيات
التي يعتمد عليها التصميم .
هذا الفصل مهم جدًا جدًا وسهل جدًا جدًا
حاولوا قراءته مرة واثنين وثلاثة ، لأن مفاهيمه ومواضيعه
تتكرر كثير وأغلب Workshop – جزء من الواجب يتم مناقشته بالمودل –
تعتمد على تصميم وانتقاد interface والذي هو جزء من مواضيع هذا الفصل.
Chapter6: Object Concepts :
هذا الفصل يعدّ من أهم الفصول على الإطلاق ،
به القواعد والمصطلحات والمفاهيم الأساسية
والتي ستعتمد عليها طوال المادة ..
فهم هذه المصطلحات من البداية ، هو فهم لجزء كبير من المادة
من أهم هذه المصطلحات هي: Class, Object, Message, Attribute
وغيرها الكثير والكثير ..
Chapter7: The Object Shop :
هذا الفصل اختياري – وهو يعتمد على برنامج موجود في CD المادة
وطريقته وكأنه لعبة يوضح من خلالها أهم المفاهيم المتعلقة بـ Objects
Chapter8: A Bank Account Class :
هذا الشابتر يوضح ما تم التعرض له خلال الشابتر6
ولكن بطريقة عملية وتطبيقية على جزء من برنامج مصغر جدا
لنظام بنكي .. ويتم شرح هذه المصطلحات بوضوح أكثر .
من خلال ما سبق ، فإن شابتر 4، 5، 6، و8
هي لبّ المنهج وأساسياته وقواعده التي سيعتمد عليها كل ما يليها.
الكتاب الثاني BlockII: Basic Smalltalk ،
Chapter9: Smalltalk Expressions :
في هذا الفصل يتم التعرف على كيفية بناء الكود
وسلسلة الأكواد وذلك باستخدام لغة البرمجة Smalltalk
وإمكانية كتابة مسج متداخلة بمسج أخرى .
Chapter10: References to Objects :
في هذا الفصل يتم شرح مفهوم كيفية التعامل مع الأوبجكت
والإشارة إلى اوبجكت بالتحديد ، وذلك عن طريق تعريفه باسمه
أو منحه متغير ، والعديد من الطرق الأخرى التي تطرق لها هذا الفصل.
Chapter11: :
هذا الفصل ليس له نسخة مطبوعة ولا الكترونية ،
وهو عبارة عن متابعة برنامج على شريط فيديو.
Chapter12: Discussing Software
فصل قصير جدًا ، حوالي 3 صفحات؛
ويهتم بمصطلح Software ومناقشة بعض البرامج.
Chapter13: Creating New Behaviours :
يتعرض هذا الفصل بالتفصيل حول سلوك الأوبجكت
وذلك عن طريق منحه البروتوكول والمسجات
والتي تخوّله من القيام بمهام محددة .
وكيفية جعل هذا البروتوكول متاحًا ، وما يتعلق بذلك
من مصطلحات جديدة مثل Encapsulation & Instance Variable
Chapter14: New Behaviours: Answers & Arguments :
هذا الشابتر يحتوي على العديد من المواضيع الهامة في البرمجة
وهي كيفية كتابة مسج مفردة او مسجات متسلسلة (متعاقبة)
لتؤدي في نهايتها حدث محدد (العبرة بالنهاية)
Chapter15: Subclasses
من أهم ما يميز البرمجة باستخدام Object-oriented هي
دعمها للوراثة ومبدأ عدم البدء من الصفر ،
بحيث أننا نستطيع استخدام أجزاء (كلاسات) تم برمجتها سابقًا
وتحتوي على خصائص عامة يمكننا من استخدامها في برنامج آخر
بحث يكون لهذا الكلاس آباء وأجداد يرث منهم بعض الخصائص .
ويسمى الكلاس الأب Superclass والابن Subclass .
Chapter16: Blocks, Dialog & Selection
في هذا الفصل ، يتم عرض طريقة برمجة مربعات الحوار
والتي تظهر للمستخدم اما لتحذير أو لطلب ادخال معلومة .
ثم ينتقل لعرض معلومات حول كيفية كتابة الجمل الشرطية البرمجية
والتي يكون جوابها إما بنعم أو لا.
الكتاب الثالث BlockIII: Smalltalk Classes ،
Chapter17: Dealing with Errors in Expressions
في هذا الشابتر يتم شرح طرق التعامل مع الأخطاء البرمجية
وأنواع هذه الأخطاء ، لمعرفة الطرق السليمة للتعامل مع كل نوع .
Chapter18: The Front Desk
هذا الشابتر عبارة عن فيلم وثائقي يتم مشاهدته من خلال اشرطة الفيديو
وهو اخيتاري بالطبع .
Chapter19: Group Working Project I
في هذا الشابتر يوضح فيه مفاهيم العمل الجماعي
ومراجعة لما تم أخذه في السابق بمادة T171
مع العلم بأن الواجب الثالث جزء منه هو عمل جماعي
يتم تطبيقه على المودل على مرحلتين Stage1 & 2
Chapter20: Collaborating and Orchestrating Objects
هذا الفصل يوضح طريقة جعل الأوبجكت تتخاطب مع بعضها
وتنسيق عملية التعاون والعامل فيما بينها وتنسيق أدوار مهامها
وذلك عن طريق اوبجكت وحيد بكل برنامج يسمى Orchestrating
Chapter21: Abstract Classes & Inheritance
هذا الشابتر يوضح Abstract Classes ، وهي عبارة
عن كلاسات عامة لا نستطيع استخدامها هي بذاتها
ولكن نستخدم أبنائها وما يتفرع منها ،
فهي تصف شيء عام جدًا مثل Number
فيوجد تحت هذا الكلاس العام تفرعات أخرى ،
يتم استخدام هذه التفرعات في البرمجة .
Chapter22: Class Variables and Class Methods
هذا الشابتر يهدف لعرض أن الكلاس مثل الاوبجكت
يمكن ان تتعامل مع عن طريق مسجات خاصة به ترسل له
لأداء مهام محددة ، تصف حالته ووضعه في البرنامج .
الكتاب الرابع BlockIV: Collections،
Chapter23: Collections: Sets & Dictionaries
هذا الفصل يوضح إمكانية استخدام كلاسات جاهزةضمن لغة البرمجة ،
ومن هذه الكلاسات هي الـ Collections
وهي ميزة تميز Object-oriented عن غيرها من طرق البرمجة
حيث أنها تحتوي على مجموعة كلاسات جاهزة للاستخدام
توضع في Library في بيئة البرمجة .
ما يميز Set & Dictionary هو قابليتهم للتمدد أو التقلص حسب الحذف أو الإضافة
Chapter24: Fixed size collections: Arrays & Strings
هذا الفصل يوضح أنواع أخرى من الكولكشن ،
وهي تحجز حجم ثابت من الذاكرة سواء استخدم جميع هذا الحجم
او استخدم بعضه فهي لا تتمدد ولا تتقلص .
Chapter25: The Information Society
هذا الفصل اختياري هو عبارة عن فيلم وثائقي يتم مشاهدته من اشرطة الفيديو
Chapter26: Ordered & Sorted Collections
هذا الشابتر يوضح نوع آخر من الكولكشن
والتي تستخدم في الترتيب والفرز ،
وهي تعتبر من الكولكشن التي تتمدد وتتقلص في حجمها
بمعنى أنها تحجز ذاكرة حسب ما يتم إضافته أو حذفه منها .
Chapter27: Developing Applications
هذا الفصل اختياري للاطلاع والقراءة فقط .
Chapter28: Group Working Project II
هذا الشابتر يوضح بعض النقاط الخاصة بالمشروع العملي الثاني
والذي يعتبر جزء من الواجب الخامس ويتم مناقشته على المودل
بوضع Stage1, 2 & 3 وارسالها في وقت محدد ضمن وقت الواجب الخامس
Chapter29: Collection Message
هذا الفصل يقدم ملخص عام لما تم استعراضه في الفصول السابقة
من بداية الكتاب الرابع ، ويعتبر مراجعة عامة لهم .
Chapter30: Talking Building
هذا الشابتر اختياري وهو عبارة عن فيلم وثائقي يتم مشاهدته من أشرطة الفيديو
وبنهاية هذه الكتاب، ينتهي المقرر الخاص بـ part1 من هذه المادة














رد مع اقتباس



المفضلات