тогда мы сможем:
1) оставить проверки графа
2) оставим засекреченным класс реализации
3) Передавать аргументы при резолве на любую глубину.
Что мы не можем:
1) Проверить корректность аргументов, минимально допустимая точка проверки это вызов setArgs. Раньше нельзя.
2) Дать имена аргументам. (можно теги, но удобство использования нарушится)
3) Нету ассиста
И в будущем можно будет расширять набор методов:
Полная подмена функции инициализации (на свой страх и риск)
Добавление дополнительных внедрений (на свой страх и риск)
first step for: https://github.com/ivlevAstef/DITranquillity/issues/83
Так... ну это английский :)
Для чего эта идея изначально? - чтобы можно было передать во время инициализации объекта доп. параметры.
То есть, чтобы даже если объект уже зарегистирован, ему можно было подменить метод инициализации.
Но почему именно подменить, а что если:
Тогда подменять метод не надо, надо лишь в момент резолва подсунуть эти аргументы. Откуда их взять? правильно засетать в контейнер:
тогда мы сможем: 1) оставить проверки графа 2) оставим засекреченным класс реализации 3) Передавать аргументы при резолве на любую глубину.
Что мы не можем: 1) Проверить корректность аргументов, минимально допустимая точка проверки это вызов
setArgs
. Раньше нельзя. 2) Дать имена аргументам. (можно теги, но удобство использования нарушится) 3) Нету ассистаИ в будущем можно будет расширять набор методов: