[Guava官方文档翻译] 1.Guava简介 (Introduction)
2014-01-30 15:03
579 查看
用户指南
Guava包含Google在Java项目中用到的一些核心库:collections, caching, primitives support, concurrency 库, common annotations, string 处理, I/O等。Google工程师们在开发中每天都使用这些工具。
但是,要学习如何用好这些库,通读Javadoc并不是最有效的方法。在这里,我们尝试用一种可读性强、轻松愉快的方法来介绍Guava中最常用和最强大的特性。
这个wiki还在编写过程中,一些部分可能还未完成。
Basic utilities: 让编写Java更愉快
使用和避免使用null: null 含义模糊,可能引起莫名其妙的error,而且就是让人讨厌。很多Guava utilities拒绝盲目使用null。
前置条件(preconditions): 更方便地测试方法的前置条件。
Common object方法: 简化Object类方法的实现,如hashCode()和toString()。
排序: Guava强大的"fluent Comparator"类.
抛出异常: 简化exception和error的传递和检验。
Collections: Guava对JDK collections ecosystem的扩展。这是Guava最成熟和最常用的部分之一。
不可变collection,支持防御性编程、常量集合使用,也可以提高效率。
新的collection类型,补充JDK collection不够完善的应用场景:multisets, multimaps, tables, bidirectional maps等。
强大的collection utilities,补充java.util.Collections缺乏的常用操作。
Extension utilities:要写Collection decorator?实现Iterator接口?我们让这些更方便。
Caches: 正确实现的本地缓存,支持多种多样的有效期(expiration)设定。
Functional idioms: 谨慎使用Guava的functional idiom可以显著简化代码。
Concurrency: 强大而简洁的抽象结构让编写并发代码更简单。
ListenableFuture: Future模式,结束时调用回调函数。
Service: 只需指定开启和终止,替你管理其他复杂的状态逻辑。
Strings: 一些极其有用的string utilities:splitting, joining, padding等。
Primitives: 补充JDK中没有的,如int和char等基本类型的操作。包括一些类型的unsigned变体。
Ranges: Guava's有强大的API来处理Comparable类型的范围问题,包括值为连续和值为离散的类型。
I/O: 简化I/O操作,尤其是在I/O流和文件上。支持Java 5和6。
Hashing: 比Object.hashCode()更高级的hash工具,包括Bloom filter。
EventBus: Publish-subscribe-style的组件交流,无需组件间显式注册。
Math: JDK中没有的,优化后的、彻底测试过的math utilities。
Reflection: 提供Java的反射功能的Guava utilities。
小提示: 让你得心应手地运用Guava。
理念: Guava是什么/不是什么,及我们的目标。
在你的build中使用Guava,如Maven, Gradle等管理工具。
使用ProGuard来避免在你的JAR中加入冗余的Guava部件。
Apache Commons equivalents,帮助你翻译使用了Apache Commons Collections的代码。
兼容性:Guava各个版本的更新细节。
提议坟场,被彻底否决的特性提议。
友情链接,我们欣赏的其他开源项目。
注意: 要讨论本wiki的内容,请发邮件至guava-discuss mailing list。
中文翻译自Guava官方文档:GuavaExplained - Introduction
Guava包含Google在Java项目中用到的一些核心库:collections, caching, primitives support, concurrency 库, common annotations, string 处理, I/O等。Google工程师们在开发中每天都使用这些工具。
但是,要学习如何用好这些库,通读Javadoc并不是最有效的方法。在这里,我们尝试用一种可读性强、轻松愉快的方法来介绍Guava中最常用和最强大的特性。
这个wiki还在编写过程中,一些部分可能还未完成。
Basic utilities: 让编写Java更愉快
使用和避免使用null: null 含义模糊,可能引起莫名其妙的error,而且就是让人讨厌。很多Guava utilities拒绝盲目使用null。
前置条件(preconditions): 更方便地测试方法的前置条件。
Common object方法: 简化Object类方法的实现,如hashCode()和toString()。
排序: Guava强大的"fluent Comparator"类.
抛出异常: 简化exception和error的传递和检验。
Collections: Guava对JDK collections ecosystem的扩展。这是Guava最成熟和最常用的部分之一。
不可变collection,支持防御性编程、常量集合使用,也可以提高效率。
新的collection类型,补充JDK collection不够完善的应用场景:multisets, multimaps, tables, bidirectional maps等。
强大的collection utilities,补充java.util.Collections缺乏的常用操作。
Extension utilities:要写Collection decorator?实现Iterator接口?我们让这些更方便。
Caches: 正确实现的本地缓存,支持多种多样的有效期(expiration)设定。
Functional idioms: 谨慎使用Guava的functional idiom可以显著简化代码。
Concurrency: 强大而简洁的抽象结构让编写并发代码更简单。
ListenableFuture: Future模式,结束时调用回调函数。
Service: 只需指定开启和终止,替你管理其他复杂的状态逻辑。
Strings: 一些极其有用的string utilities:splitting, joining, padding等。
Primitives: 补充JDK中没有的,如int和char等基本类型的操作。包括一些类型的unsigned变体。
Ranges: Guava's有强大的API来处理Comparable类型的范围问题,包括值为连续和值为离散的类型。
I/O: 简化I/O操作,尤其是在I/O流和文件上。支持Java 5和6。
Hashing: 比Object.hashCode()更高级的hash工具,包括Bloom filter。
EventBus: Publish-subscribe-style的组件交流,无需组件间显式注册。
Math: JDK中没有的,优化后的、彻底测试过的math utilities。
Reflection: 提供Java的反射功能的Guava utilities。
小提示: 让你得心应手地运用Guava。
理念: Guava是什么/不是什么,及我们的目标。
在你的build中使用Guava,如Maven, Gradle等管理工具。
使用ProGuard来避免在你的JAR中加入冗余的Guava部件。
Apache Commons equivalents,帮助你翻译使用了Apache Commons Collections的代码。
兼容性:Guava各个版本的更新细节。
提议坟场,被彻底否决的特性提议。
友情链接,我们欣赏的其他开源项目。
注意: 要讨论本wiki的内容,请发邮件至guava-discuss mailing list。
中文翻译自Guava官方文档:GuavaExplained - Introduction
相关文章推荐
- TC官方文档翻译01----TokyoCabinet简介(Tokyo Cabinet/Tokyo Tyarnt 文档系列)
- [Guava官方文档翻译] 3. 前置条件检查(Preconditions Explained)
- SymmetricDS文档翻译--【Chapter 1. 简介(Introduction)】
- 【翻译】XIBO官方文档1-Introduction
- [Guava官方文档翻译] 5. Guava的Object公共方法 (Common Object Utilities Explained)
- Kafka官方文档翻译——简介
- Instruments User Guide苹果官方文档翻译1——Introduction
- JMeter简介--官方部分翻译文档
- SDWebImage 官方文档 翻译(v3.7.5 中文 简介,非API文档 )
- Sencha Touch 2 官方文档翻译之 Sencha Touch 2应用程序简介
- 【Tomcat 6.0官方文档翻译】—— 简介
- Android中的Menu的简介(翻译自官方文档)——————个人笔记
- Introduction to C++ Programming in UE4——UE4官方文档翻译与理解(一)
- [技术翻译]Guava官方文档Ordering
- Android中的ActionBar的简介(翻译自官方文档)——————个人笔记
- kafka官方文档翻译-introduction
- Services简介,翻译自官方文档
- 【翻译】Xibo官方文档11-Layout-Introduction
- CritterAI官方文档翻译【An Introduction to Navigation】
- iOS 翻译-UIWebView的基本简介-官方文档翻译