Реализация Service Provider в JavaScript. Dependency Injection

Третье видео из пяти по разработке простейшего механизма внедрения зависимостей на примере реализации adonisjs 4. Это видео по созданию Service Provider и о возможностях по настройке приложения в Service Provider. Продемонстрирована модульная структура. В этом видео я разрабатываю Service Provider и демонстрирую следующие возможности: Внедрение строки Внедрение конфигурации и дополнение конфигурации приложения через Service Provider Использование класса в качестве Injection Token Регистрация контейнера для провайда однотипных данных (задел на API & SPI) Смотри теорию в первом видео: О том как сделать IoC смотрим во втором видео: Ну и о том, для чего и как использовать Service Providers смотри в третьем видео: И что такое Service Contracts в четвертом видео: Заключительное видео про API & SPI: Напоминаю, что IoC Container используется в механизме Dependency Injection чтобы получать экземпляры сервисов согласно конфигурации самого контейнера. Dependency Injection Порождающий шаблон проектирования, предоставляющий логику внедрения сервисов в клиентский код без понимания что нужно для создания сервисов. Позволяет инкапсулировать лоигку создания сервисов. Плюсы Client не отвечает за создание Облегчает тестирование Делает композицию более эффективной Гибкое конфигурирование Минусы Риск для безопасности Приложение усложняется Требует квалификации Плейлист с разбором Dependency Injection в Angular Видео где я поясняю что такое Singleton ---- Ветка для начала урока Ветка с выполненным уроком Инструкция для начала работы над уроком 1) Открыть терминал 2) Склонировать репозиторий git clone lesson 3) Перейти в папку проекта cd lesson 4) Установить все зависимости npm install 5) Для запуска сборки проекта в режиме разработки запустить npm start 6) Открыть Visual Studio Code и начать разработку по уроку Спасибо за просмотр. Подписывайтесь на канал для того чтобы не пропустить следующие видео 00:00 - План видео 01:19 - Базовый Service Provider 06:24 - Модульная структура 07:43 - Provide строки 10:33 - Provide конфигурации 14:13 - Token === class 17:25 - Provide контейнера для группы зависимостей 19:58 - Выводы
Back to Top