Встречается на собеседованиях • сегодня
Какая возникнет проблема при неправильном использовании композиции
Неправильное использование композиции может привести к проблемам с управлением зависимостями и нарушению инкапсуляции. Например, если объект-контейнер создаёт зависимые объекты внутри себя, это усложняет тестирование и замену компонентов.
Пример проблемы:
python
class Engine:
def start(self):
print("Engine started")
class Car:
def __init__(self):
self.engine = Engine() # Жёсткая зависимость
def start(self):
self.engine.start()Здесь Car жёстко зависит от Engine, что затрудняет замену двигателя или мокирование в тестах.
Решение: Внедрять зависимости через конструктор (Dependency Injection):
python
class Car:
def __init__(self, engine: Engine):
self.engine = engine # Гибкая зависимостьТак код становится более гибким и тестируемым.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы