Podcast
Questions and Answers
البرمجة الشيئية تساعد في تنظيم البيانات والإجراءات المتعلقة بها.
البرمجة الشيئية تساعد في تنظيم البيانات والإجراءات المتعلقة بها.
True (A)
الأشياء مثل هواء أو درجة حرارة تعتبر عناصر حسية.
الأشياء مثل هواء أو درجة حرارة تعتبر عناصر حسية.
False (B)
السمات تعتبر أشياء في حد ذاتها.
السمات تعتبر أشياء في حد ذاتها.
False (B)
يمكن أن تحمل سيارات وأشجار صفات مشابهة مثل اللون.
يمكن أن تحمل سيارات وأشجار صفات مشابهة مثل اللون.
الكائنات تمثل المفاهيم التجريدية فقط.
الكائنات تمثل المفاهيم التجريدية فقط.
الاهتمام الانتقائي يساعد في فهم البرمجة الشيئية.
الاهتمام الانتقائي يساعد في فهم البرمجة الشيئية.
الكائن هو شيء يمكن تمييزه بوضوح.
الكائن هو شيء يمكن تمييزه بوضوح.
السمات هي عناصر محيطة مثل الهواء والضوء.
السمات هي عناصر محيطة مثل الهواء والضوء.
كلما تستدعى ميثود الإضافة، يتم إنشاء كومة جديدة لتخزين المتغيرات المحلية.
كلما تستدعى ميثود الإضافة، يتم إنشاء كومة جديدة لتخزين المتغيرات المحلية.
الكائنات في الذاكرة تظل حتى لا يتم استخدامها وبعد ذلك يقوم جامع القمامة بإزالتها.
الكائنات في الذاكرة تظل حتى لا يتم استخدامها وبعد ذلك يقوم جامع القمامة بإزالتها.
الواجهة العامة تتعلق بالأجزاء التي تستخدمها الكائنات الأخرى للتفاعل مع الكائن.
الواجهة العامة تتعلق بالأجزاء التي تستخدمها الكائنات الأخرى للتفاعل مع الكائن.
يمكن الوصول إلى كائن واحد في الذاكرة من خلال مرجع واحد فقط.
يمكن الوصول إلى كائن واحد في الذاكرة من خلال مرجع واحد فقط.
وظائف الكائن الداخلية تشمل فقط الطرق التي يستخدمها الكائن للتفاعل مع الكائنات الأخرى.
وظائف الكائن الداخلية تشمل فقط الطرق التي يستخدمها الكائن للتفاعل مع الكائنات الأخرى.
خلال البرمجة الكائنية، يمكن أن يشير كائن إلى عدة أسماء أو متغيرات.
خلال البرمجة الكائنية، يمكن أن يشير كائن إلى عدة أسماء أو متغيرات.
التغيير في كائن يشير إليه متغير واحد، ينعكس على جميع المتغيرات الأخرى التي تشير إلى نفس الكائن.
التغيير في كائن يشير إليه متغير واحد، ينعكس على جميع المتغيرات الأخرى التي تشير إلى نفس الكائن.
كائن المركب يمكن أن يحتوي على كائنات مكونات تشكل جزءًا منه.
كائن المركب يمكن أن يحتوي على كائنات مكونات تشكل جزءًا منه.
الكائنات تتكون فقط من مكون واحد.
الكائنات تتكون فقط من مكون واحد.
يمكن أن توجد كائنات المكونات بشكل مستقل عن الكائن المركب.
يمكن أن توجد كائنات المكونات بشكل مستقل عن الكائن المركب.
علاقة الاعتماد تعني أن وجود كائن واحد يعتمد بالكامل على وجود كائن آخر.
علاقة الاعتماد تعني أن وجود كائن واحد يعتمد بالكامل على وجود كائن آخر.
يمكن أن تشير مراجع الأفراد إلى نفس الكائن في الذاكرة.
يمكن أن تشير مراجع الأفراد إلى نفس الكائن في الذاكرة.
تسمح العناوين الغير مباشرة بإنشاء نسخ متعددة من نفس الكائن.
تسمح العناوين الغير مباشرة بإنشاء نسخ متعددة من نفس الكائن.
يمكن اعتبار الركاب في سيارة مثالًا لعلاقة الاعتماد بين الكائنات.
يمكن اعتبار الركاب في سيارة مثالًا لعلاقة الاعتماد بين الكائنات.
الكائنات المعقدة تُصنع من دمج كائنات أبسط، مما يعكس العلاقات والاعتماد في العالم الحقيقي.
الكائنات المعقدة تُصنع من دمج كائنات أبسط، مما يعكس العلاقات والاعتماد في العالم الحقيقي.
يمكن لكائنات مثل الكتاب أن ترتبط بكائنات أخرى مثل المؤلف دون الحاجة لعلاقة مركبة صارمة.
يمكن لكائنات مثل الكتاب أن ترتبط بكائنات أخرى مثل المؤلف دون الحاجة لعلاقة مركبة صارمة.
الاستاذ عندو طريقة لي تنجم تعلم التلاميذ.
الاستاذ عندو طريقة لي تنجم تعلم التلاميذ.
في البرمجة الكائنية، الكلاس لي يمثل السيارة ما عندوش خصائص مثل اللون والعلامة التجارية.
في البرمجة الكائنية، الكلاس لي يمثل السيارة ما عندوش خصائص مثل اللون والعلامة التجارية.
التفاعل بين الكائنات في البرمجة الكائنية يكون فقط بدون تبادل الرسائل.
التفاعل بين الكائنات في البرمجة الكائنية يكون فقط بدون تبادل الرسائل.
في البرمجة الكائنية، الكلاسات الفرعية تستطيع وراثة الخصائص من الكلاسات الرئيسية.
في البرمجة الكائنية، الكلاسات الفرعية تستطيع وراثة الخصائص من الكلاسات الرئيسية.
لا يمكن لكائن السيارة أن يكون مسجلاً في كائن الموقف.
لا يمكن لكائن السيارة أن يكون مسجلاً في كائن الموقف.
في مثال كلاس السيارة، ما نحتاجوش نعيدو تمرير معلومات السيارة عند كل عملية لتحقق.
في مثال كلاس السيارة، ما نحتاجوش نعيدو تمرير معلومات السيارة عند كل عملية لتحقق.
يجب على كائن الموقف التعرف على نوع السيارة قبل القيام بأي عملية.
يجب على كائن الموقف التعرف على نوع السيارة قبل القيام بأي عملية.
الوراثة تعني أن كل كائن يمكنه أن يرث فقط طريقة واحدة.
الوراثة تعني أن كل كائن يمكنه أن يرث فقط طريقة واحدة.
البرمجي يقدر يخلق كلاص جديدة ويحدد الميتود والأتريبيوت.
البرمجي يقدر يخلق كلاص جديدة ويحدد الميتود والأتريبيوت.
اللغات اللي تتعامل مع الأوبجيكتس تقتصر على الكلاصات والأوبجيكتس المحددة سلفا.
اللغات اللي تتعامل مع الأوبجيكتس تقتصر على الكلاصات والأوبجيكتس المحددة سلفا.
الميتود setSize()
تتطلب كلاص جديدة لتغيير حجم الخط.
الميتود setSize()
تتطلب كلاص جديدة لتغيير حجم الخط.
الميتود turnOn()
تغير حالة المصباح وتحتاج تعرف على أي أوبجيكت تطبق.
الميتود turnOn()
تغير حالة المصباح وتحتاج تعرف على أي أوبجيكت تطبق.
البرمجة كائنية التوجه (OOP) تتعامل مع الأوبجيكتس بطريقة مباشرة.
البرمجة كائنية التوجه (OOP) تتعامل مع الأوبجيكتس بطريقة مباشرة.
الأوبجيكتس تتواصل بتعطي تعليمات وتنفذها على أساس الأدوار.
الأوبجيكتس تتواصل بتعطي تعليمات وتنفذها على أساس الأدوار.
المبرمج يستعمل الميتود accelerate()
من أجل التعديل على الكلاص Car
مباشرة.
المبرمج يستعمل الميتود accelerate()
من أجل التعديل على الكلاص Car
مباشرة.
كل كائن يؤدي نفس المهمات بغض النظر عن الكلاص الذي ينتمي له.
كل كائن يؤدي نفس المهمات بغض النظر عن الكلاص الذي ينتمي له.
العبارة 'وسيلة النقل' واضحة وتحديداً تعني سيارة.
العبارة 'وسيلة النقل' واضحة وتحديداً تعني سيارة.
عملية الإرث في البرمجة الكائنية تسمح بترتيب الفئات في تسلسل هرمي.
عملية الإرث في البرمجة الكائنية تسمح بترتيب الفئات في تسلسل هرمي.
تستخدم مصطلحات عامة مثل 'سيارة' في المحادثات اليومية لأن لها معنى أوضح.
تستخدم مصطلحات عامة مثل 'سيارة' في المحادثات اليومية لأن لها معنى أوضح.
بتنفيذ بوليمورفيسم، يمكن أن تستجيب أنواع مختلفة من الكائنات لنفس الرسالة بنفس الطريقة.
بتنفيذ بوليمورفيسم، يمكن أن تستجيب أنواع مختلفة من الكائنات لنفس الرسالة بنفس الطريقة.
قد تحتاج إلى تفاصيل أكثر دقة عندما تتحدث إلى ميكانيكي عن مشكلتك في السيارة.
قد تحتاج إلى تفاصيل أكثر دقة عندما تتحدث إلى ميكانيكي عن مشكلتك في السيارة.
استخدام مصطلحات عامة للغاية قد يسبب لبس في المحادثات.
استخدام مصطلحات عامة للغاية قد يسبب لبس في المحادثات.
عندما تقول 'هاتف'، فإن هذا المصطلح يعني دائماً نموذج معين مثل 'آيفون 14' فقط.
عندما تقول 'هاتف'، فإن هذا المصطلح يعني دائماً نموذج معين مثل 'آيفون 14' فقط.
يتعلق مستوى التفاصيل الذي تحتاجه في الاتصال بالسياق.
يتعلق مستوى التفاصيل الذي تحتاجه في الاتصال بالسياق.
Flashcards
فئات جديدة
فئات جديدة
برامج تخلق وتُعرّف فئات جديدة، وتحدد خصائص الكائنات (objects) التي سوف تحتويها.
الأساليب
الأساليب
أدوات (methods) يتم تنفيذها داخل فئة (class) معينة. تعريفها يحدد كيفية عمل الأشياء داخل الفئة.
السمات (Attributes)
السمات (Attributes)
العناصر الأساسية التي تُعرف بها فئة (class) في برامج الكمبيوتر. تحدد الخصائص والصفات التي تُميز جميع كائنات (objects) هذه الفئة.
البرمجة الموجهة نحو الكائنات
البرمجة الموجهة نحو الكائنات
Signup and view all the flashcards
برمجة غير موجهة نحو الكائنات
برمجة غير موجهة نحو الكائنات
Signup and view all the flashcards
النقطة .
النقطة .
Signup and view all the flashcards
طريقة العمل
طريقة العمل
Signup and view all the flashcards
تحديد الكائن
تحديد الكائن
Signup and view all the flashcards
مساحة المكدس
مساحة المكدس
Signup and view all the flashcards
مساحة الـ Heap
مساحة الـ Heap
Signup and view all the flashcards
التوجيه غير المباشر
التوجيه غير المباشر
Signup and view all the flashcards
مُشاور
مُشاور
Signup and view all the flashcards
مُشاور (متعدد)
مُشاور (متعدد)
Signup and view all the flashcards
الشيء (object)
الشيء (object)
Signup and view all the flashcards
المكون (component)
المكون (component)
Signup and view all the flashcards
مُكوّن (component)
مُكوّن (component)
Signup and view all the flashcards
تسلسل الكائنات
تسلسل الكائنات
Signup and view all the flashcards
الوراثة في البرمجة الشيئية
الوراثة في البرمجة الشيئية
Signup and view all the flashcards
مصطلحات محددة للسياق
مصطلحات محددة للسياق
Signup and view all the flashcards
مشاكل التعميم
مشاكل التعميم
Signup and view all the flashcards
اعتماد السياق على المستوى التصنيفي الصحيح
اعتماد السياق على المستوى التصنيفي الصحيح
Signup and view all the flashcards
تعدد الأشكال في البرمجة الشيئية
تعدد الأشكال في البرمجة الشيئية
Signup and view all the flashcards
تطبيق تعدد الأشكال
تطبيق تعدد الأشكال
Signup and view all the flashcards
تعدد الأشكال والوراثة
تعدد الأشكال والوراثة
Signup and view all the flashcards
الواجهة العامة (Public Interface)
الواجهة العامة (Public Interface)
Signup and view all the flashcards
الوظائف الداخلية (Internal Functioning)
الوظائف الداخلية (Internal Functioning)
Signup and view all the flashcards
الفصل المادي (Physical Separation)
الفصل المادي (Physical Separation)
Signup and view all the flashcards
تركيب الكائنات (Object Composition)
تركيب الكائنات (Object Composition)
Signup and view all the flashcards
التبعية (Dependency)
التبعية (Dependency)
Signup and view all the flashcards
الوصول (Access)
الوصول (Access)
Signup and view all the flashcards
علاقة الإعتماد (Dependence Relationship)
علاقة الإعتماد (Dependence Relationship)
Signup and view all the flashcards
أنواع العلاقات (Types of Relations)
أنواع العلاقات (Types of Relations)
Signup and view all the flashcards
ما هي البرمجة الموجهة للكائنات (OOP)؟
ما هي البرمجة الموجهة للكائنات (OOP)؟
Signup and view all the flashcards
كيف تشبه رؤية العالم البرمجة الموجهة للكائنات؟
كيف تشبه رؤية العالم البرمجة الموجهة للكائنات؟
Signup and view all the flashcards
ما هو مفهوم الانتباه الانتقائي؟
ما هو مفهوم الانتباه الانتقائي؟
Signup and view all the flashcards
ما هي السمات التي تميز الأشياء؟
ما هي السمات التي تميز الأشياء؟
Signup and view all the flashcards
ما هو الكيان؟
ما هو الكيان؟
Signup and view all the flashcards
كيف ترتبط السمات بالكيانات؟
كيف ترتبط السمات بالكيانات؟
Signup and view all the flashcards
ما هي العلاقة بين السمات والكيانات؟
ما هي العلاقة بين السمات والكيانات؟
Signup and view all the flashcards
هل يمكن أن تكون للعديد من الكائنات نفس السمة؟
هل يمكن أن تكون للعديد من الكائنات نفس السمة؟
Signup and view all the flashcards
خاصية (Attribute) في OOP
خاصية (Attribute) في OOP
Signup and view all the flashcards
طريقة (Method) في OOP
طريقة (Method) في OOP
Signup and view all the flashcards
التواصل بين الأجسام (Objects) في OOP
التواصل بين الأجسام (Objects) في OOP
Signup and view all the flashcards
الوراثة (Inheritance) في OOP
الوراثة (Inheritance) في OOP
Signup and view all the flashcards
الفئة الأم (Superclass) في OOP
الفئة الأم (Superclass) في OOP
Signup and view all the flashcards
الفئة الفرعية (Subclass) في OOP
الفئة الفرعية (Subclass) في OOP
Signup and view all the flashcards
التغليف (Encapsulation) في OOP
التغليف (Encapsulation) في OOP
Signup and view all the flashcards
الربط المتأخر (Late Binding) في OOP
الربط المتأخر (Late Binding) في OOP
Signup and view all the flashcards
Study Notes
فصل 1: المبادئ الأساسية للعلوم الحاسوبية
- يصف هذا الفصل المبادئ الأساسية للعلوم الحاسوبية، مع التركيز على مفهوم الكائنات في البرمجة الموجّهة بالكائنات.
- تُستخدم البيانات بشكلٍ فعّالٍ لفهمها، وتحليلها، وتحديثها، وتخزينها.
- تُنظّم البرمجة الموجّهة بالكائنات البيانات والإجراءات التي تُنفّذ عليها بطريقة واضحة ومفهومة.
- بعد إنشاء فئات المُعطيات والكائنات، يمكن العمل مع البيانات منطقيًّا.
المقدمة (2)
- في البرمجة المُوجّهة بالكائنات، ينصبّ التركيز على مفهوم الكائنات.
- يُمثّل الكائن وحدةً مستقلةً تجمع بين المُعطّيات والسلوك.
- تشتمل مُعطّيات الكائن على متغيّرات تُسمّى الحقول أو الصفات.
- تشمل تصرّفات الكائن وظائف تُنفّذ على مُعطّيات الكائن.
- تُعرّف هذه الوظائف سلوك الكائن.
- لكلّ كائن هويّة تميّزه عن غيره.
- الحقول والصفات هي أساس المُعطّيات، والسلوك هو أساس تصرّفات الكائن.
الثلاثي <الكائن، الصفة، القيمة>
- يُستخدم الثلاثي < الكائن، الصفة، القيمة > لوصف العالم من خلال الكائنات.
- الكائن: يُعرّف أيّ شيء يمكن تمييزه أو التعرف عليه، ويشمل الأشياء المادية وأيضًا المفاهيم المُجرّدة.
- الصفة: تُميّز الكائنات، وتُعطيها خصائص مميزة، مثل اللون، والسنّ، والحجم.
- القيمة: قيمة كل صفة.
مثال على الثلاثي <الكائن، الصفة، القيمة>
- يُوضّح هذا المثال كيف يتم تمثيل الكائن "الطالب" بواسطة خصائصه وقيمها
- الطالب هو كائن أساسي
- يمكن أن تكون الخصائص (الحقول) هي: الرقم الجامعي، الاسم، العمر، العنوان، رقم الهاتف.
ما هي البرمجة المُوجّهة بالكائنات؟
- تُنظّم البرمجة المُوجّهة بالكائنات التعليمات البرمجية حول البيانات، والمعروفة بـ "الكائنات"، بدلاً من الوظائف والإجراءات.
- تُبسّط البرمجة المُوجّهة بالكائنات تطوير البرامج من خلال تمكين المستخدم من نمذجة أي بيانات يحتاجها، والعمل معها منطقيًا.
- تُعرّف فئات المُعطيات نموذج البيانات وتُقدّم خططًا بسيطة قابلة لإعادة الاستخدام لإنشاء كائنات.
- تسمح لنا بتصميم العالم من حولنا بطريقة بديهية، و تُساعدنا البرمجة المُوجّهة بالكائنات على تحقيق المرونة والهيكلية في البرامج.
ما هو الكائن؟
- الكائن وحدة مُستقلة تجمع بين البيانات والسلوك.
- البيانات تُمثّل حالة الكائن، والأفعال تُمثّل تصرّفات الكائن.
- تُمثل حالة الكائن البيانات الموجودة داخل الكائن، المُمثلة بواسطة المتغيّرات.
- يُعرّف سلوك الكائن من خلال الوظائف التي تُنفّذ على بيانات الكائن، وتحدد ما يمكن للكائن إنجازه.
- تُعتبر هوية الكائن ما يجعله فريدًا.
تخزين الكائنات في الذاكرة
- يتم تخصيص مساحة ذاكرة محددة لكل كائن تم إنشاؤه في البرنامج.
- أنواع البيانات الأساسية تُستخدم لتبسيط إدارة الذاكرة.
- أحجام محددة مسبقاً يتم تخصيصها لكل نوع من أنواع البيانات الأساسية.
مثال على حساب حجم الذاكرة المُطلوبة للكائن
- يحتوي هذا المثال على بيانات يُمكن من خلالها حساب حجم الذاكرة
- يتم حساب الحجم المُجمّع لكل معطى وحقل في الكائن.
المُشير إلى الكائن
- كل كائن في البرنامج مُعطى اسم مميز (اسم الكائن) يُستخدم كمعرّف فريد.
- اسم الكائن يُرتبط بشكل فريد بمعرف الذاكرة الخاص به.
- كلّ كائن له معرّف ذاكرة فريد، مما يضمن عدم تكرار الكائنات في نفس المساحة.
- مُشير الكائن متغير خاصّ يُخزّن مُعرّف الذاكرة للكائن.
- تُخزّن في مساحة ذاكرة مُخصصة لأسماء الرموز. تُسمح بتحديد ما يصل إلى (2^32) عنوان فريد.
- يمثّل المُشير عنوان الذاكرة الفعليّ للكائن، وهو ضروريّ للوصول إلى البيانات المُرتبطة بذاكرة الكائن والعمل معها بكفاءة.
الذاكرة المُكدّسة والذاكرة المُكدّسة (2)
- يتم تخزين البيانات المؤقتة والبيانات المُتعلّقة بالأساليب داخل الذاكرة المُكدّسة.
- يتم استخدام الذاكرة المُكدّسة لتخزين الأجسام المُؤقتة والحقول المُتعلقة بالأساليب.
- تتم إزالة البيانات بعد انتهاء وظيفتها.
- الذاكرة المُكدّسة مساحة ذاكرة أكبر تُستخدم لتخزين الكائنات.
- تُدار تلقائيًا بواسطة لغة البرمجة Java، مما يضمن حذف الكائنات غير المستخدمة.
مثال على الذاكرة المُكدّسة
- يوضح المثال كيفية إنشاء و حذف الكائنات في الذاكرة المُكدّسة.
مثال على الذاكرة المُكدّسة
- يوضح المثال إنشاء وتحرير الكائنات في الذاكرة المُكدّسة.
الكائنات المتعددة لنفس الكائن
- يُمكن الوصول إلى كائن واحد من خلال عدة مُشيرين.
- يمكن أن تُمثّل المعرّفات المختلفة لكائن واحد نفس الكائن في الذاكرة.
الكائن في شكله السلبي
- يُنظر إلى الكائن ككل، وليس بالجزء من مكوناته.
- تُعرّف الكائنات بواسطة فئات.
- الأجزاء الداخلية للكائن (مثل العجلة في السيارة) لا تُدرج في واجهة الكائن.
- واجهة الكائن هي الطريقة التي يرتبط بها الكائن مع الكائنات الأخرى (مثل طريقة
start()
وstop()
في كائن السيارة). - يُحافظ الفصل بين هذه الجوانب على تنظيم التعليمات البرمجية وسهولة صيانتها.
تكوين الكائن
- يشمل تكوين الكائن كائنًا رئيسيًا يحتوي على كائنات أخرى.
- الاعتماد: لا يمكن لِلُجزء من الكائن أن يعمل مُنفردًا.
- الدخول: تُتاح الوصول إلى مكونات الكائن عن طريق الكائن الرئيسي.
- يُوفّر مثال المنزل (كائن مركّب) يحتوي على غرف (كائنات منفصلة).
علاقة التبعية
- الكائنات المتصّلة لكن وجود كائن واحد لا يرتبط بوجود الآخر.
- مثال: الركاب في السيارة يعتمدون على السيارة لكن يستطيعون أن يكونوا مُنفردين.
طبيعة الكائن النشط
- الكائنات ليست ثابتة، فهي مُتنقّلة و قابلة للتغيير.
- تتفاعل الكائنات مع الأحداث، كالردود على الإشارات.
- الكائنات تتغيّر حالتها، مما يؤثّر على خصائصها.
- تُعطي حيوية الكائن أهميّة و تعقيداً للبرنامج بسبب قدرته على التغيير والتفاعل مع البيئة.
حالة الكائن
- تُعرّف حالة الكائن بحالته المُحدّثة.
- تُغيّر حالة الكائن من خلال تغيير قيم المُعطّيات.
- هوية الكائن مُستقلة عن قيم المُعطّيات.
- يتم تحديث قيم البيانات في الذاكرة بدون تغيير عنوان الكائن.
- يحتفظ الكائن بخصائصه حتى يُحذف من الذاكرة.
دورة حياة الكائن
- إن دورة حياة الكائن تُمثّل سلسلة من التغييرات في حالة الكائن من الإنشاء إلى الحذف.
- يمر الكائن بمراحل مختلفة: إنشاء، استخدام، تغيير، وتدمير.
- يتم إرجاع حالة الكائن إلى القيم الأولية.
- يتم إزالة الكائن من الذاكرة عندما لم يعد مُطلوب.
المسؤلية
- يتمّ التحكم في تغييرات حالة الكائن من خلال العمليات.
- مثل تغيير اللون في ضوء المرور.
- العمليات تُحدّث قيم الصفات.
التمرين
- كيف يؤثر العلاقة التكوين بين الكائنات على إدارة الذاكرة في البرنامج المُوجّه بالكائنات؟
الاختبارات الموضوعيّة
- يحتوي على مجموعة من الأسئلة المُختارة عن المبادئ المُتعلّقة بالكائنات.
- تشمل أنواع الكائنات وكيفية تفاعلها وتصريفاتها.
المقدمة لفكرة الفئة
- الفئة نموذج أو مخطط يُعرّف شكل الكائن.
- تفصّل الفئة بنية البيانات وكيفية التعامل معها.
- تُسمى البيانات داخ الكائن مُتغيّرات الحالة.
- تعرّف الفئات جزأين أساسيين للكائن: البيانات المُمثلة بواسطة مُتغيّرات الحالة، والأفعال تُعرّف بواسطة الأساليب.
- تُعرّف المُتغيّرات خارج الأساليب، وتُعتبر جزءًا من الفئة.
- كل كائن من كائنات الفئة لديه نسخة خاصة به من المتغيّرات.
المقدمة لفكرة الفئة (2)
- تُستخدم الفئة كنموذج لإنشاء العديد من الكائنات.
- مثال على فئة ناقل:
- يحتوي على مُتغيّر (حقل) لحفظ عدد الركّاب.
- يوجد أساليب (وظائف) للتعامل مع هذا الحقل (قراءة أو تغيير قيمته).
مُنشئ الفئة
- مُنشئ الفئة هي طريقة خاصة في الفئة تُستدعى عند إنشاء كائن جديد.
- تعمل على تهيئة خصائص الكائن.
- يوفّر مُنشئ الفئة وسيلة لإنشاء مثيلات من الفئة، ولتحقيق المميزات وتنفيذ الأفعال المطلوبة من داخل البرنامج.
طريقة الأداء
- هي طريقة مُخصصة للحصول على قيمة الصفة.
- مثال على طريقة للحصول على قيمة الصفة: الحصول على القيمة من خاصية (حقل) محددة.
طريقة الاضافة
- هي طريقة مُخصصة لتغيير قيمة الصفة.
- مثال على طريقة إضافة قيمة لخاصية (حقل) معينة.
مثال على مُثيلات الكائن
- يُوضح كيفية إنشاء كائن من فئة محددة.
- يُوضّح المثال إنشاء كائن من فئة معينة باستخدام الكلمة المُفتاحية "new".
المُتغيّرات المُجرّدة والعالمية
- يُشار إلى المُتغيّرات داخل الفئة لكن خارج المُنشئ أو الوسائل بأنها المُتغيّرات المُجرّدة.
- كل مُثال من كائنات الفئة لديه نسخة خاصة من المُتغيّرات المُجرّدة.
- أمثلة عن هذه المُتغيّرات: عدد الركاب
المُتغيّرات المُجرّدة والعالمية (2)
- تقسم المُتغيّرات إلى نوعين: مُتغيّر الحالة، مُتغيّر ثابت.
- مُتغيّر الحالة: يُربط بمثال معيّن من الكائن. (مثال: عدد الركاب في السيارة).
- مُتغيّر ثابت: يُربط بالفئة نفسها، وليست بنسخ معيّنة من الكائنات.
- يُشار إلى المُتغيّرات الثابتة بكلمة مُفتاحية "static".
المُتغيّرات المُجرّدة والعالمية (3)
- المُتغيّرات الثابتة تُخصّص عند تحميل الفئة.
- قيمها لا تتغير مع إنشاء كائن جديد.
- يمكن الوصول إليها مباشرة من خلال اسم الفئة، لأنها جزء لا يتجزأ من الفئة.
الاختبارات الموضوعيّة (2)
- (تضمنت أسئلة اختبار)
ما هو الوراثة؟
- مفهوم أساسي في البرمجة المُوجّهة بالكائنات.
- تُستخدَم الوراثة لإعادة استخدام الخصائص والطرق من فئة موجودة بالفعل.
- تُنشئ فئة جديدة بناء على فئة موجودة.
هيكل الكائنات
- تُصنّف الكائنات في هيكل هرمي يُظهر العلاقات فيما بينها.
- مثال: "الهاتف" فئة عامة ، "iPhone 14" فئة مُحدّدة.
- تُصنّف الفئات وفقًا لمستوى التخصّص.
الاعتماد على السياق
- مستوى التفاصيل المطلوبة في الكلام يُحدّد السياق.
- مثال: تحدث مع ميكانيكي عن إصلاح السيارة، يجب أن يكون الكلام مُحدد.
- السياق يحدّد درجة التخصيص في التعبير.
تعدد الأشكال
- مفهوم أساسي في البرمجة المُوجّهة بالكائنات. يسمح بتصميم وحدة واحدة متعددة السلوكيات.
- يُتيح التعبير عن نفس العملية بطريقة مختلفة حسب نوع الكائن.
- يُضاف تعدّد الأشكال لمبدأ الوراثة و يُعزز التفاعل المُتكامل بين الكائنات.
- مثال: النقر بالماوس على الشاشة ، تُنفذ سلوك متفاوت حسب نوع الهدف (نافذة، أيقونة، إلخ).
تنفيذ الأسلوب على كائن محدّد (1)
- تحتاج طريقة
turnOn()
إلى معرفة الكائن المُراد تطبيقها عليه. - النقطة (.) تربط الأسلوب بالكائن.
- يُتيح الوصول إلى السمات المُرتبطة بالكائن فقط.
الكائنات تتواصل كيف؟
- تتفاعل في البرمجة المُوجّهة بالكائنات لتُنفّذ المهام المُطلوبة.
- مثال: المُدرّس يُعطي تعليمات، الطالب يُنفّذها.
- الطرق المُخصّصة للكائنات (مثل تعليم الدرس أو الحفظ) هي العمليات التي تؤدّي إلى التفاعل بين الكائنات.
إيجاد مُستلم الرسالة
- كيفية التعامل مع تحديد نوع الكائن الداخل عبر الطريقة.
- مثال: فئة "سيارة" لتحديد إذا كان الكائن سيارة داخل فئة "سوق".
إيجاد مُستلم الرسالة (2)
- تحسين عملية تحديد الكائن لتبسيطها.
- مُساعدة الكائن في الحفاظ على إشارة الكائن الرئيسيّ الذي ينتمي إليه.
Studying That Suits You
Use AI to generate personalized quizzes and flashcards to suit your learning preferences.
Related Documents
Description
هذا الاختبار يستعرض المفاهيم الأساسية للبرمجة الكائنية، بما في ذلك الفروق بين الكائنات والسمات وأهمية الوظائف والواجهات. سيساعدك على فهم كيف تعمل الكائنات وكيف تتفاعل مع بعضها البعض.