Guice最佳实践和反模式

35

我不确定这个问题是否有价值,但是是否有任何与Google Guice相关的最佳实践和反模式呢?

请将任何通用的DI模式指向这个问题


我鼓励任何有兴趣为这个问题做出贡献的人去查看Guice文档主题。 - dimo414
2个回答

31

我一直认为将构造函数注入到final字段是一个最佳实践。它最小化了可变状态,并通过使类的形式依赖明确来使类更易于理解。

public class MyClass {
    private final MyDependency dependency;

    @Inject
    public MyClass(MyDependency dependency) {
        this.dependency = dependency;
    }
}

如果我们有数十个依赖项会怎么样?构造函数将会非常混乱。 - jilen
12
如果一个类有很多依赖,这可能意味着这个类的职责太重了,需要进行重构。 - Matthew Madson
如果你想要编写单元测试,那么这绝对是正确的方法! - Kurru

14

在Guice项目页面上有一些相关内容。 这里是第一个链接,您可以在侧边栏中查看其他链接。

话虽如此,我认为在这里发布并进行投票会很好。然后,我们可以将最好的内容写到Guice页面上。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接