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

Как работает внедрение зависимостей

Внедрение зависимостей (DI) — это паттерн, при котором зависимости объекта передаются извне, а не создаются внутри класса. Это делает код более гибким и тестируемым. В Java DI часто реализуется через конструкторы, сеттеры или фреймворки (Spring, Guice).

Пример с конструктором:

java
public class UserService {
    private final UserRepository repository;

    // Зависимость внедряется через конструктор
    public UserService(UserRepository repository) {
        this.repository = repository;
    }
}

Преимущества DI:

  1. Упрощает тестирование (можно подменить зависимости моками)
  2. Уменьшает связанность кода
  3. Позволяет легко менять реализацию зависимостей

Фреймворки вроде Spring автоматизируют DI через аннотации (@Autowired, @Inject), управляя жизненным циклом объектов (бинов).

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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