Sobes.tech
Junior — Middle
101

Pode explicar o que significa o princípio de composição na programação orientada a objetos?

Empresas quando solicitadas
СБЕР Бизнес
АО К-Технологии

Resposta da IA

sobes.tech IA

Принцип композиции в объектно-ориентированном программировании означает построение сложных объектов из более простых, путем включения одних объектов внутрь других. Вместо наследования, где класс расширяет другой класс, композиция позволяет создавать объекты, которые содержат другие объекты как свои части, делегируя им часть функциональности.

Например, если у вас есть класс Автомобиль, он может содержать объект класса Двигатель. Вместо того, чтобы Автомобиль наследовал Двигатель, он просто использует его как часть себя. Это повышает гибкость и повторное использование кода.

Пример на Python:

class Engine:
    def start(self):
        print("Двигатель запущен")

class Car:
    def __init__(self):
        self.engine = Engine()  # композиция

    def start(self):
        self.engine.start()  # делегирование вызова

car = Car()
car.start()  # Выведет: Двигатель запущен

Таким образом, композиция позволяет строить сложные объекты из простых компонентов, улучшая модульность и облегчая поддержку кода.