4 ms·
Ease of comprehension is more important than tests for preventing bugs. A highly testable DI nightmare will have more bugs than a simple system that people can
by osigurdson 1y ago
Ease of comprehension is more important than tests for preventing bugs. A highly testable DI nightmare will have more bugs than a simple system that people can understand just by looking at it.
- mrsmrtss 1y agoI haven't experienced a DI 'nightmare' myself yet, but then again, we have integration tests to cover for that.
- CharlieDigital 1y agoTry Nest.js and you'll know true DI "nightmares".
- thatnerdyguy 1y agoIf the argument is that most developers can't understand what a DI system does, I don't know if I buy that. Or is the argument it's hard to track down dependencies? Because if that's the case the idiomatic c# has the dependencies declared right in the ctor.
- LinXitoW 1y agoBut the "simple" system will be full of repetition and boilerplate, meaning the same bugs are scattered around the code base, and obscured by masses of boilerplate. Isn't a GC also a Magic? Or anything above assembly? While I also understand the reluctance to use too much magic, in my experience, it's not the magic, it's how well the magic is tested and developed. I used to work with Play framework, a web framework built around Akka, an async bundle of libraries. Because it wasn't too popular, only the most common issues were well documented. I thought I hated magic. Then, I started using Spring Boot, and I loved magic. Spring has so much documentation that you can also become the magician, if you need to.