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

Зачем нужен dependency injection

Dependency Injection (DI) — это паттерн, который позволяет передавать зависимости извне, а не создавать их внутри класса. Это делает код более гибким, тестируемым и поддерживаемым.

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

  • Упрощает замену зависимостей (например, моки для тестов).
  • Уменьшает связанность компонентов.
  • Позволяет централизованно управлять зависимостями.

Пример без DI:

javascript
class UserService {
  constructor() {
    this.api = new Api(); // Зависимость жестко зашита
  }
}

Пример с DI:

javascript
class UserService {
  constructor(api) { // Зависимость передается извне
    this.api = api;
  }
}

const api = new Api();
const userService = new UserService(api); // Теперь легко подменить API для тестов

Фреймворки (Angular, NestJS) часто имеют встроенные DI-контейнеры.

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

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

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

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