Comment by pshirshov
2 days ago
> I’ll ever understand the affinity for DI libraries
DI addresses/can address/affects more than 10 different aspects of application lifecycle. We've described our reasoning in several talks linked at https://github.com/7mind/izumi?tab=readme-ov-file#docs
> I feel like it causes a new class of dependency ordering bugs or missing dependencies
That's precisely where phased approach shines.
I looked at the link you shared but it’s just a page of additional links.
Can you provide specific examples here instead?
What I think is most useful in cases like this is before-and-after code snippets showing how the library adds value.
There are docs and examples here: https://izumi.7mind.io/distage/
Not in before-after form though, but there was that "I'll eat my hat" discussion exactly in this form: https://www.reddit.com/r/hascalator/comments/aigfux/comment/...?
I assume the top comment was made in relation to TypeScript, not DI in general. A lot of this content explains how it improves on problems compared to Spring, and statements like 'there was no good way to create configurable apps' or avoiding use of Java reflections, which do not seem relevant to TypeScript/JS.