我刚刚开始使用Google Guice作为依赖注入框架,并试图将其改进为我最近编写的一个中小型项目。我了解Guice如何工作的基础知识,但对某些方法细节有些模糊。例如:与Google Guice握手
1)模块用于定义绑定,然后将其输入注入器。你倾向于把所有东西都放到一个模块中,还是倾向于把东西分解成许多更小的模块?
2)您是否在顶层注入了一个注入整个对象树的注入器,或者多个注入器点缀着哪个注入器,只注入那些您真正需要注入的依赖关系?我在这里想到了我自己的代码库,当然,它有很多依赖关系,但只有一小部分我需要在测试期间进行控制。
3)我稍微停留在使用仅测试环境模块而不是生产版本来获得我的系统/集成测试的最佳方式。这个问题可能是特定于实现的,但我很好奇人们使用什么方法。作为参考,我的应用程序是一个基于servlet的web应用程序。
其他指针?
啊,我想我现在开始看到差异了。我偶然发现了另一篇关于我的困惑的帖子。从本质上讲,整个代码中的多个注入器更类似于服务定位器模式,而不是依赖注入。还有更多的事情需要我去解决,但是谢谢你的回答,因为这给了我一个非常好的开始。 – 2010-07-19 10:28:36