CS215 : البرمجة الشيئية

القسم العلمي

قسم الحاسب الآلي

البرنامج الدراسي

بكالوريوس في علوم الحاسب الآلي

نوع المقرر

إجباري

الوحدات

04

الاسبقيات

CS115

نظرة عامة

  1. توضيح المفاهيم الأساسية للبرمجة الشيئية .
  2. تدريب الطالب على كتابة برامج بلغة C++ كوسيلة لتطبيق مفاهيم البرمجة الشيئية.
  3. تعريف مفهوم الوراثة وكيفية استخدامها والتعرف على كيفية معالجة الأخطاء باستخدام الإستثناءات ودراسة مفاهيم متقدمة لأصناف C++.
  4. التعرف على مفهوم تعدد الاشكال وكيفية التحويل بينها.

المخرجات التعليمية المستهدفة من دراسة المقرر

‌أ. المعرفة والفهم

1

يتعرف الطالب على مفهوم الصنف و كيفية بناءه و تطويره.

2

التعرف على كيفية كتابة برامج بلغة C++ مستخدما طريقة البرمجة الشيئية.

3

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

4

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

‌ب. المهارات الذهنية

1

تصميم وتكوين الأصناف التي تمثل مشكلة ما.

2

تصميم برامج بلغة C++ مستخدما طريقة البرمجة الشيئية.

3

تطبيق دمج الاستثناءات في الأصناف وتوظيف ميزة الوراثة في تطوير وتعديل البرامج المصممة مسبقا .

4

تطبيق دمج الأصناف التي تتطلب تعدد الأشكال.

‌ج. المهارات العملية والمهنية

1

يعــد وينشئ أصناف مختلفة لتمثيل البيانات والعمليات التي تجرى عليها

2

القدرة على كتابة وتطوير وتعديل نظام برمجي شيئي.

3

اكتساب مهارة البرمجة الشيئية وبناء نظام برمجي شيئي متكامل وتطوير وتوظيف ميزة الوراثة

4

القدرة على البرمجة بلغة (C++) باستخدام الأشكال المتعددة و التحويل مابين أنواع الأشياء

‌د. المهارات العامة والمنقولة

1

استخدام تكنولوجٌا المعلومات للحصول على المعلومات والبيانات. .

2

يمتلك القدرة على العمل في فريق عمل برمجي.

3

مهارات االاتصال.

طرق التعلم والتعليم

  • محاضرات نظري وعملي.
  • مناقشة الواجبات البرمجية.

طرق التقييم

رقم التقييم

أساليب التقييم

مدة التقييم

وزن التقييم

النسبة المئوية

تاريخ التقييم (الأسبوع)

التقييم الأول

الامتحان الأول

ساعة و نصف

الباب 1-2 (من 5-6 أسئلة)

15%

الأسبوع 5

التقييم الثاني

الامتحان الثاني

ساعة و نصف

الباب3- 4 (من 5-6 أسئلة)

15%

الأسبوع 10

التقييم الثالث

الواجبات البرمجية

ساعة

بعد كل جزئية برمجة

10%

بعد نهاية كل جزء

التقييم الرابع

الامتحان العملي

ساعة

كل المقرر

10%

الأسبوع 15

التقييم النهائي

الامتحان النهائي

ساعتين

كل المقرر

50%

الأسبوع 16

المجموع

100 درجة

100%

محتوى المقرر

الاسبوع

الموضوع العلمي

عدد الساعات

محاضرة

معمل

1و2

1. مُقدمة عن البرمجة الشيئية (التجريد، الصنف، الشيء ، بناء النموذج الشيئي، لغة أو مخطط النمذجة الموحدة، خصائص النظام الشيئي).

10

6

4

3--5

2. برامج C++ الشيئية (حقول الحالة، طرق الحالة، حقول الأصناف و طرق الأصناف، خطوات تكوين صنف، تكوين حقول الحالة، طرق البناء و الهدم، طرق الوصول الى مكونات الأشياء، طريقة تجربة الصنف، طرق الصنف الغير ساكنة (طرق الحالة)، الكلمة المحجوزة this ، طريقة البناء الناسخة، طرق الهدم),

15

9

6

6--8

3. مفاهيم متقدمة لأصناف C++ (الأصناف الصديقة و الطرق (الدوال) الصديقة ، قالب الأصناف، الأصناف المُتداخلة، الاحتواء، إعادة تحميل المؤثرات، طرق البناء و التحويل مابين الأنواع، طرق البناء و مصفوفة الأشياء ، طرق البناء والهدم للأصناف المحتوية لأصناف أخرى، طرق البناء والهدم لقوالب الأصناف

15

9

6

9--11

4. الوراثة و معالجة الاستثناءات (متى نستخدم الوراثة ؟، محددات الوصول في C++ ، التعامل مع الأشياء الفرعية كأنها أشياء رئيسية، طرق البناء، طرق الهدم، طريقة إعادة تحميل مؤثر الإسناد للأصناف الفرعية.، قوالب أصناف الفرعية ،الاستثناء: حاول ،أرمي و إمساك، إعادة رمي الاستثناء).

15

9

6

12--14

5. تعدد الأشكال و الوراثة المُتعددة (تعدد الأشكال، الدوال الافتراضية، الوراثة المتعددة، الغموض في الوراثة المتعددة)

15

9

6

المراجع

عنوان المراجع

الناشر

النسخة

المؤلف

مكان تواجدها

مذكرات المقرر

-------

-------

-------

-------

الكتب الدراسية المقررة

منشورات دار الحكمة

الطبعة الأولى.

لطفي سالم الهويجي

دار الحكمة

كتب مساعدة

C++ How to Program

10th Edition Pearson International

Paul J. Deitel and Harvey Deitel

نسخة الكترونية

كتب مساعدة

The C++ Programming Language

4th Edition

Addison-Wesley

Bjarne Stroustrup

نسخة الكترونية

مجلات علمية

-------

-------

-------

-------

مواقع إنترنت

-------

-------

-------

-------

غيرها

-------

-------

-------

-------

الذكاء الاصطناعي (CS456)
البرمجة الشيئية باستخدام الجافا (CS439)
البرمجة المرئية (CS435)
تصميم مترجم (CS432)
تنظيم حاسب 2 (CS440)
برمجة الويب 2 (CS416)
هندسة الويب (CS412)
إدارة المشاريع (CS411)
تصميم وتطوير تطبيقات الأجهزة المحمولة (CS410)
نظرية الاتمتة واللغات الصيغية (CS441)
بحوث العمليات (CS442)
تحليل عددي (CS448)
لغة انجليزية 1 (EL101)
رياضة 1 (MA100)
هندسة تحليلية مستوية (MA101)
مقدمة في الإحصاء (ST101)
أساسيات البرمجة (CS100)
لغة عربية 1 (AR051)
رياضة 2 (MA102)
هندسة تحليلية فراغية (MA103)
فيزياء عامة 1 (PH112)
مقدمة في الاحتمال (ST102)
البرمجة الهيكلية I (CS111)
لغة عربية 2 (AR052)
التركيبات المتقطعة (CS200)
تنظيم الحاسب الآلي (CS207)
البرمجة الهيكلية 2 (CS214)
البرمجة بلغة الاسمبلي (CS211)
البرمجة الشيئية (CS215)
لغة انجليزية 2 (EL102)
هياكل بيانات وخوارزميات1 (CS331)
برمجة الويب (CS315)
تحليل وتصميم النظم (CS319)
طرق عددية (CS323)
هياكل بيانات وخوارزميات2 (CS332)
لغات البرمجة (CS336)
أمن نظم الحاسب (CS340)
شبكات الحاسب الآلي (CS343)
نظم تشغيل (CS437)
برمجة نظم (CS431)
قواعد البيانات (CS436)
مشروع تخرج (CS450)
استرجاع المعلومات (CS444)
هندسة البرمجيات (CS438)