تخطَّ إلى المحتوى

🧩 شرح البرمجة كائنية التوجّه

العلاقات بين الكائنات

الدرس 13 من 25· ⏱ 1 دقائق قراءة

أنواع العلاقات

1) الارتباط (Association)

علاقة عامّة "يعرف/يستخدم":

class Teacher: ...
class Student:
    def __init__(self, teacher):
        self.teacher = teacher    # الطالب يرتبط بمعلّم

2) التجميع (Aggregation)

علاقة "جزء من" لكن الجزء يعيش مستقلًّا:

class Department:
    def __init__(self):
        self.employees = []       # الموظّفون يبقون لو حُذف القسم

3) التركيب (Composition)

علاقة "جزء من" قويّة: الجزء يموت بموت الكلّ:

class House:
    def __init__(self):
        self.rooms = [Room(), Room()]   # الغرف لا تُوجد بلا البيت

المقارنة

العلاقةالقوّةحياة الجزء
ارتباطضعيفةمستقلّ
تجميعمتوسّطةمستقلّ
تركيبقويّةتابع للكلّ

💡 فهم هذه العلاقات أساس تصميم نماذج واضحة ومخطّطات UML.

🎯 التالي: محدّدات الوصول.

هل كان هذا الدرس مفيدًا؟