google account manager app(Google Guice 用户指南 – Ⅰ:概览)
译者:kefate
原文:https://github.com/google/guice/wiki/Overview
大家好 ,我是kefate 。今天开始我将会把Google Guice的官方文档陆续翻译一遍 ,水平有限 ,若有翻译不妥之处 ,还望各位不吝指出 。OK ,话不多说 ,下面开始今天的正文~
Guice 是一个基于Java的轻量级的 依赖注入(dependency injection) 框架 。
使用依赖注入有很多好处 ,但手动操作往往会导致编写大量的模板代码 。为了解决这个问题 ,Guice 框架应运而生 。它可以让你使用依赖注入的同时 ,避免编写大量的模板代码 ,这一点在下一节中有进一步的说明 。
简单来说 ,Guice 减轻了对象工厂的需求 ,同时减少了代码中对 new 的使用 。我们可以把 Guice 的 @Inject 想象成新的 new 。在某些情况下,你仍然需要编写工厂模式的代码 ,但你的代码不会直接依赖于它们 。代码将更容易修改 、单元测试以及在其他情况下复用 。
Guice 拥护Java的类型安全特性 ,尤其是在涉及到Java 5中引入的特性时,如泛型和注解 。你可以把 Guice 看作是对核心Java缺失功能的填补 。理想情况下 ,语言本身会提供大部分相同的功能特性 ,但在这种语言出现之前 ,我们可以用 Guice。
Guice 可以帮助你设计更好的 API ,并且 Guice API 本身也树立了一个好的榜样 。 Guice 的设计理念是是宁缺毋滥(Guice is not a kitchen sink) ,我们用至少三个用例来证明每个功能的合理性 。如果对于一个一功能没有把握 ,我们就不去管它。我们也提供了通用的能力让你能够扩展 Guice ,而不是在 Guice 的核心框架中添加功能 。
Guice 的目标是使开发和调试更容易 、更快速 ,而不是更难 、更慢 。本着这一宗旨 ,Guice 避免使用一些难以理解的“黑科技 ”(Guice steers clear of surprises and magic) 。不管有没有工具 ,你都应该能够理解代码 ,尽管工具可以使事情变得更加简单 。当错误发生的时候 ,Guice 会多做一些工作来生成有用的信息 。
创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!