我一直在阅读有关控制反转原理和依赖注入作为其实现的更多信息,并且我确信我理解它。
似乎基本上是在说“不要在类中声明类成员的实例化”。相反,实例化应该通过构造函数传递并分配;从外部来源“注入”到班级中。
如果就这么简单(看起来如此),为什么我们需要像spring或guice这样的带有注释的框架?我在这里缺少基本的东西吗?我真的很难理解依赖注入框架的用途。
编辑:关于可能的重复,我相信我的问题更加独特,因为它询问的是一般的DI框架,而不仅仅是Spring。Spring不仅是一个DI框架,所以有很多人想要使用Spring的原因都与DI无关。