Изменения документа JS Внедрение зависимостей | JS Dependency injection
Редактировал(а) Alexandr Fokin 2023/01/06 17:11
<
>
отредактировано Alexandr Fokin
на 2020/07/12 19:31
на 2020/07/12 19:31
отредактировано Alexandr Fokin
на 2020/07/14 11:02
на 2020/07/14 11:02
Изменить комментарий:
К данной версии нет комментариев
Комментарий
-
Свойства страницы (2 изменено, 0 добавлено, 0 удалено)
Подробности
- Свойства страницы
-
- Теги
-
... ... @@ -1,1 +1,1 @@ 1 -DI 1 +DI|js - Содержимое
-
... ... @@ -23,4 +23,8 @@ 23 23 24 24 25 25 26 +Для создания ServieLocator использовалась библитеока di-xxl. Как показывает практика библиотека не умеет самостоятельно анализировать конструктор и определять необходимые для экземпляра зависимости. Как вариант можно явно прописать список параметров, передаваемых в конструктор, в блоке регистрации зависимости. Но на мой взгляд, более хорошим решением является разрешение зависимостей через ServieLocator в конструкторе базового класса. В таком случае список зависимостей определен в самом классе, а не в блоке регистрации зависимостей. 27 +(Возможно в данном варианте можно обойтись и без библиотеки di-xx. Сделав свое Key-Value хранилище привязок и поддержку singlethon) 26 26 29 +Также хочу отметить важность создания строковых переменных с именами условных интерфейсов (привязок для внедрения). Чтобы в случае переименования интерфейса было достаточно заменить одну строковою переменную. А не искать по коду: где именно внедрялася данный интейс, чтобы изменить имя разрешения зависимости. 30 +