الدرس 15: التركيب مقابل الوراثة
السيارة لديها محرّك — لكنها ليست نوعاً من المحرّك. للعلاقات من نوع "لديه" توجد أداة ثانية بسيطة على نحو مفاجئ: تخزين كائن كخاصية داخل كائن آخر. هذا هو التركيب — والاختيار بينه وبين الوراثة هو أحد أهم قرارات التصميم.
الوراثة هي الحمض النووي — ما أنت عليه؛ والتركيب هو حقيبة الظهر — ما تملكه. الكلب حيوان (وراثة)، أما السيارة فلديها محرّك فحسب (تركيب).
- التركيب
- بناء صنف من كائنات أصناف أخرى — كائن يُخزَّن كخاصية: self.engine = Engine().
- علاقة "لديه"
- "السيارة لديها محرّك" — علاقة تُحَلّ بالتركيب لا بالوراثة.