Встречается на собеседованиях • сегодня

Почему не стоит останавливаться на конкретной реализации интерфейса

Жесткая привязка к конкретной реализации нарушает принцип подстановки Барбары Лисков (LSP) и усложняет поддержку кода. Лучше зависеть от абстракций (интерфейсов), чем от деталей реализации. Это позволяет: 1. Легко менять реализацию без изменения клиентского кода 2. Упрощать тестирование (можно подменить реальную реализацию mock-объектом) 3. Соблюдать Open-Closed Principle (расширяемость без модификации) Пример плохого подхода: ```java // Жесткая привязка к ArrayList public class Processor { private ArrayList items = new ArrayList<>(); } ``` Лучший вариант: ```java public class Processor { private List items; public Processor(List items) { this.items = items; } } ``` Теперь можно передавать любую реализацию List: ArrayList, LinkedList, или даже кастомную.
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы