任何人都可以比较Google Guice和Spring DI吗?

rad*_*ish 7 spring dependency-injection guice

任何人都可以在Spring DI上列出Google guice的优缺点吗?两者都以一种方式或另一种方式满足依赖注入.在哪些情况下我们可以使用google guice,在哪些情况下我们可以选择Spring DI.

Jon*_*n W 4

嗯,我已经将两者用于不同的事情。我认为这很大程度上取决于偏好。

我不会在这里进行详尽的比较,因为其他人已经在网络上这样做了。根据我的经验,Spring 更适合 Java EE 方面的事物(Web 应用程序等),而 Guice 更适合其他类型的应用程序(例如在 Eclipse 中)。我想说的是,反对Spring 的论点(讨论其“笨拙”的 XML 配置)已不再正确。从 Spring 3 开始,如果您愿意,可以使用带注释的 Java 类(几乎)完全配置应用程序上下文。

还要记住,Guice 比 Spring 新得多,并且在某种程度上,开发团队能够根据 Spring 开发 DI 框架所学到的知识来构建他们的代码。在 Guice 中,对于更多角落用例(例如用于部分基于工厂的注入的 @Assisted 注释)似乎有更多的灵活性。