随笔 - 2, 文章 - 0, 评论 - 0, 阅读 - 252

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

Google Guice 用户指南 - Ⅰ:概览

Posted on   kefate  阅读(202)  评论(0编辑  收藏  举报

译者: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 会多做一些工作来生成有用的信息。

相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
点击右上角即可分享
微信分享提示