Skip to main content

Як інверсія управління пов'язана з DI?

Інверсія управління (IoC) - це принцип, а Dependency Injection (DI) - це спосіб його реалізувати.

Якщо просто:

  • IoC каже: «хай не код керує залежностями, а хтось інший»;
  • DI робить це на практиці - впроваджує залежності автоматично.

Приклад:

Без DI (немає інверсії управління):

ts
const service = new UserService(); const user = service.getUser();

Компонент сам створює залежність - він «головний».

З DI (є інверсія управління):

ts
constructor(private userService: UserService) {}

Тепер Angular створює UserService і подає його компоненту. Контроль над створенням об'єктів перейшов до фреймворку - це і є інверсія управління.


Підсумок: DI - це конкретний механізм, за допомогою якого Angular реалізує принцип IoC.

Коротка відповідь

Для співбесіди
Premium

Коротка відповідь допоможе вам впевнено відповідати на цю тему під час співбесіди.