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

На каких уровнях можно выполнять внедрение зависимостей (Inject)

Внедрение зависимостей можно выполнять на нескольких уровнях:

  1. Конструктор (Constructor Injection) - самый распространённый способ. Зависимости передаются через параметры конструктора.
typescript
class UserService {
  constructor(private db: Database) {}
}
  1. Сеттеры (Setter Injection) - зависимости устанавливаются через методы-сеттеры.
typescript
class AuthService {
  private logger: Logger;

  setLogger(logger: Logger) {
    this.logger = logger;
  }
}
  1. Интерфейсы (Interface Injection) - зависимость внедряется через специальный интерфейс.

  2. Поля класса (Property Injection) - прямое присвоение свойств (менее предпочтительный способ).

Во фронтенде DI часто реализуется через:

  • Ручное внедрение (как в примерах выше)
  • Фреймворки (Angular имеет встроенный DI)
  • Контейнеры зависимостей (InversifyJS, Awilix)
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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