Что такое композиция

Python Senior Без компании
Что такое композиция
Ответы
Композиция — это принцип проектирования, при котором один класс включает в себя экземпляры других классов для делегирования части функциональности. Это альтернатива наследованию, обеспечивающая более гибкую и модульную архитектуру. **Пример:** ``` class Engine: def start(self): return "Engine started" class Car: def __init__(self): self.engine = Engine() # Композиция: Car содержит Engine def drive(self): return self.engine.start() + " -> Car is moving" car = Car() print(car.drive()) # Вывод: "Engine started -> Car is moving" ``` **Преимущества:** - Лучшая инкапсуляция (внутренние детали скрыты). - Легче менять компоненты без влияния на основной класс. - Избегает проблем множественного наследования. Композиция предпочтительнее наследования, когда требуется гибкость и слабая связанность.