Встречается на собеседованиях • сегодня
Что такое Внедрение зависимости (Dependency injection)
Внедрение зависимости (DI) — это паттерн проектирования, при котором зависимости объекта передаются извне (через конструктор, сеттер или интерфейс), а не создаются внутри класса. Это делает код более гибким, тестируемым и поддерживаемым.
Пример с DI через конструктор:
java
public class UserService {
private final UserRepository userRepository;
text
// Зависимость внедряется через конструктор
public UserService(UserRepository userRepository) {
this.userRepository = userRepository;
}}
// Использование
UserRepository repo = new DatabaseUserRepository();
UserService service = new UserService(repo);
text
Преимущества DI:
- Упрощает тестирование (можно подменить реальные зависимости моками)
- Уменьшает связанность кода
- Делает конфигурацию более гибкой
- Позволяет легко менять реализации зависимостей
В Java DI часто реализуется через фреймворки (Spring, Guice), но может использоваться и вручную.
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы