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