我对 Java 中的 Spring 范式有几个问题:
1)假设我有一个应用程序,我将所有内容都写入接口,然后在最后一刻,在我实际的 main() 或配置文件中的某个地方,我定义了要使用的特定类。我是否实现了与 Spring 相同的目标?在那种情况下,我为什么需要 Spring 的 DI?编写接口并将细节留到最后一刻,是程序员几十年来一直使用的标准做法。
2)如果反对意见是在某个(最终)时间点新建对象,则必须在我的界面驱动应用程序中的某个时间点完成,但这有什么问题?有一个“新”语句如何使一个类无法使用或无法测试——或者它只是可读性/透明度?
3)人们说以声明方式使用对象“摆脱了依赖关系”。但是我们仍然有一个依赖:我们必须导入一个新类,即使我们不“新建”它,我们才能编译代码?