Встречается на собеседованиях • сегодня
Зачем нужен DI
DI (Dependency Injection) позволяет управлять зависимостями между компонентами, делая код более гибким, тестируемым и поддерживаемым. Вместо жесткого связывания объектов через new, зависимости передаются извне (через конструктор, сеттеры или интерфейсы).
Пример без DI:
java
class UserService {
private UserRepository repo = new UserRepository();
}Пример с DI (через конструктор):
java
class UserService {
private UserRepository repo;
public UserService(UserRepository repo) {
this.repo = repo;
}
}Преимущества:
- Упрощает тестирование (можно подменить зависимости моками).
- Уменьшает связанность кода.
- Позволяет легко менять реализацию зависимостей.
DI часто реализуется через фреймворки (Spring, Guice), но может применяться и вручную.

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