Dependency injection (или внедрение зависимостей) — это одна из реализаций принципа ООП под названием Inversion of Control, название которой впервые дал Мартин Фаулер. DI предоставляет общий механизм управления зависимостями, поэтому объектам не нужно знать, как и о…