首页 > 其他分享 >Google Guice 用户指南 - Ⅰ:概览

Google Guice 用户指南 - Ⅰ:概览

时间:2023-02-13 22:12:31浏览次数:131  
标签:功能 Google Java 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 会多做一些工作来生成有用的信息。

标签:功能,Google,Java,Guice,代码,概览,编写
From: https://www.cnblogs.com/kefate/p/guice-wiki-Overview.html

相关文章

  • ASP.NET Core 概览
    1.是什么ASP.NETCore是一个编程框架。它的特点有:-跨平台-高性能-开源-适合构建现代云服务-运行在.NETCore上2.好处-可以做WebUI,也可以做WebAPI-......
  • 并发编程概览
    并行和并发并行(parallel):指在同一时刻,有多条指令在多个处理器上同时执行。并发(concurrency):指在同一时刻只能有一条指令执行,但多个进程指令被快速的轮换执行,使得在宏......
  • ReplaceGoogleCDN扩展 V2版本和V3版本的区别
    文档说明:只记录关键地方;2023-02-11环境:chromium内核备注:firefox目前不支持declarativeNetRequest区别:v2版本允许通过javascript脚本动态修改HTTP请求头、......
  • google广告分类
    Google广告的偏好设置,根据兴趣类别和受众人口统计特点类别来展示广告,可以设置站点Adsense的出现广告的类别,Adsense的分类体系如下:1、类别:1578,不算多,也不算少。2、级别:一级大......
  • Google Apprentice Bard AI chatbot All In One
    GoogleApprenticeBardAIchatbotAllInOneAIchatbot/AI聊天机器人ApprenticeBardApprenticeBardGoogle'spotentialChatGPTrivalAboutApprenticeBar......
  • java.lang.NoSuchMethodError: com.google.gson.GsonBuilder.setLenient()Lcom/google
    引入第三方的工具类,重新启动项目就会奇奇怪怪的报错。加载不到gson类。一开始以为是没有加载到,各种引入,清理问题依然存在。直到仔细看报错信息,里面是spring的类报错,才意识......
  • 谷歌关键词是怎么排名的?google关键词优化
    本文主要分享关于谷歌排名算法的一些分析以及谷歌关键词优化的细节。本文由光算创作,有可能会被修改和剽窃,我们佛系对待这种行为吧。谷歌关键词排名是指确定网站在搜索引擎结......
  • Casbin: 连续3年参加Google Summer of Code的开源授权技术领导者
    Casbin是一个开源的授权解决方案,很自豪的宣布它已经连续三年参加GoogleSummerofCode(GSoC)项目。Casbin是实现访问控制和授权管理的最受欢迎的开源项目之一。该项目广泛应......
  • Casbin: 连续3年参加Google Summer of Code的开源授权技术领导者
    Casbin是一个开源的授权解决方案,很自豪的宣布它已经连续三年参加GoogleSummerofCode(GSoC)项目。Casbin是实现访问控制和授权管理的最受欢迎的开源项目之一。该项目广泛......
  • 移动端跨平台开发框架概览(IOS / 安卓)
    前言在移动端开发项目中。开发资源不够时,同时由两个团队维护安卓和IOS两套原生APP是成本很高的。此时,就需要选择一个同时支持多平台的客户端开发框架,能够使用一套代码,编译......