2

我对 Java 中的 Spring 范式有几个问题:

1)假设我有一个应用程序,我将所有内容都写入接口,然后在最后一刻,在我实际的 main() 或配置文件中的某个地方,我定义了要使用的特定类。我是否实现了与 Spring 相同的目标?在那种情况下,我为什么需要 Spring 的 DI?编写接口并将细节留到最后一刻,是程序员几十年来一直使用的标准做法。

2)如果反对意见是在某个(最终)时间点新建对象,则必须在我的界面驱动应用程序中的某个时间点完成,但这有什么问题?有一个“新”语句如何使一个类无法使用或无法测试——或者它只是可读性/透明度?

3)人们说以声明方式使用对象“摆脱了依赖关系”。但是我们仍然有一个依赖:我们必须导入一个新类,即使我们不“新建”它,我们才能编译代码?

4

1 回答 1

1

有些人,比如我,更喜欢使用 Spring XML 配置依赖项和接口实现的连接,而不是硬编码它们。所有的连接都在一个地方(假设您没有使用注释),我也可以说修改 XML 文件的配置比修改代码更容易。如果需要更改某些内容,您还可以在应用程序运行之间调整 Spring 文件。
Spring 是一个很好的框架,已经存在了一段时间。我发现它非常擅长依赖注入(DI)。虽然您在 #1 中的方法没有任何“错误”,但我认为使用 Spring 将为您提供更强大的实现。为什么要重新发明轮子?

于 2013-10-28T22:22:37.650 回答