большинством таких интерфейсов на практике редко бывает более одной реализации?
— Как узнать, когда, в каком порядке и с какими аргументами были инициализированы зависимости, использующиеся в конкретной области кода? Как это влияет на debuggability и maintainability кода?
— Как повлиять на порядок инициализации зависимостей и аргументы, используемые при их инициализации?
— Как сделать так, чтобы определенные зависимости создавались при каждом вызове функции, а другие — использовались повторно?
— Какие проблемы решает DI? Стоит ли решение этих проблем добавления геморроя по вышеуказанным вопросам?
Полностью согласен, и поэтому DI фреймворки это зло, к понятию DI это всё не имеет отношения. DI это просто передача зависимости на один уже созданный сервис другому. Можно передать ссылку на объект, не обязательно создавать интерфейс. Можно создавать объекты самому. Всё остальное от лукавого.
Аплодирую стоя.
Обсуждают сегодня