Реализация ServiceLocator или IoC Container в JavaScript. Dependency Injection

100 Просмотры
Издатель
Второе видео из пяти по разработке простейшего механизма внедрения зависимостей на примере реализации adonisjs 4. Это видео по созданию IoC Container. С помощью реализации собственного IoC можно лучше понять как устроен этот паттерн

В этом видео я разрабатываю IoC Container, но его можно назвать и по другому
Inversion Of Control (IoC) Container
Service Locator
Injector
ObjectManager
Registry

Смотри об этом подробнее в первом видео:
https://youtu.be/FF_eyaCrZD8

Напоминаю, что IoC Container используется в механизме Dependency Injection чтобы получать экземпляры сервисов согласно конфигурации самого контейнера.

Dependency Injection Порождающий шаблон проектирования, предоставляющий логику внедрения сервисов в клиентский код без понимания что нужно для создания сервисов. Позволяет инкапсулировать лоигку создания сервисов.

Плюсы
Client не отвечает за создание
Облегчает тестирование
Делает композицию более эффективной
Гибкое конфигурирование

Минусы
Риск для безопасности
Приложение усложняется
Требует квалификации

Плейлист с разбором Dependency Injection в Angular
https://youtu.be/2XzVwsV3HtQ

Видео где я поясняю что такое Singleton
https://youtu.be/92PkkPCT4BE

----
Ветка для начала урока
https://github.com/MaksymGrom/js-di-lesson/tree/DI-0

Ветка с выполненным уроком
https://github.com/MaksymGrom/js-di-lesson/tree/DI-1

Инструкция для начала работы над уроком
1) Открыть терминал
2) Склонировать репозиторий
git clone https://github.com/MaksymGrom/js-di-lesson/tree/DI-0 lesson
3) Перейти в папку проекта
cd lesson
4) Установить все зависимости
npm install
5) Для запуска сборки проекта в режиме разработки запустить
npm start
6) Открыть Visual Studio Code и начать разработку по уроку

Спасибо за просмотр.
Подписывайтесь на канал для того чтобы не пропустить следующие видео.
Категория
Разработка Приложений
Комментариев нет.