ITPub博客

首页 > Linux操作系统 > Linux操作系统 > Guice指南-自举(Bootstrapping)你的应用

Guice指南-自举(Bootstrapping)你的应用

原创 Linux操作系统 作者:梧桐雨—168 时间:2008-03-21 17:24:01 0 删除 编辑

自举(bootstrapping)对于依赖注入非常重要。总是显式地向 Injector 索要依赖,这就将 Guice 用作了服务定位器,而不是一个依赖注入框架。

你的代码应该尽量少地和 Injector 直接打交道。相反,你应该通过注入一个根对象来自举你的应用。容器可以更进一步地将依赖注入根对象所依赖的对象,并如此迭代下去。最终,在理想情况下,你的应用中应该只有一个类知道 Injector,每个其他类都应该使用注入的依赖关系。

例如,一个诸如 Struts 2 的 Web 应用框架通过注入你的所有动作类来自举你的应用。你可以通过注入你的服务实现类来自举一个 Web 服务框架。

依赖注入是传染性的。如果你重构一个有大量静态方法的已有代码,你可能会觉得你正在试图拉扯一根没有尽头的线。这是好事情。它表明依赖注入正在帮助你改进代码的灵活性和可测试性。

如果重构工作太复杂,你不想一次性地整理完所有代码,你可以暂时将一个 Injector 的引用存入某个类的一个静态的字段,或是使用静态注入。这时,请清楚地命名包含该字段的类:比如 InjectorHack 和 GodKillsAKittenEveryTimeYouUseMe。记住你将来可能不得不为这些类提供伪测试类,你的单元测试则不得不手工安装一个注入器。记住,你将来需要清理这些代码。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/13270562/viewspace-214955/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2008-02-28

  • 博文量
    141
  • 访问量
    402039