Google Java編程庫Guava介紹
本系列想介紹下Java下開源的優秀編程庫-- Guava[?gwɑ?v?] 。它包含了Google在Java項目中使用一些核心庫,包含集合(Collections),緩存(Caching),并發編程庫(Concurrency),常用注解(Common annotations),String操作,I/O操作方面的眾多非常實用的函數。Guava需要JDK1.6及以上版本。
使用這些開源的類庫,幫助非常大,能夠節約你的寶貴時間,減少你出錯的可能,讓你把時間都集中在處理自己獨特的業務邏輯上。同時可以多看看這些優秀的開源庫,向他們學習,能夠幫助你設計更好的API,讓你的代碼更易讀,更整潔,更簡單,因為這些API自身就是很好的例子。
Guava庫是按照 Joshua Bloch 的 Effective Java: 2nd Edition 來寫的,不可變性(不可變的集合, CharMatcher , Joiner , Splitter 等),構造者模式( ImmutableList.builder() , Joiner , Ordering 等),范型等隨處可見,使用工廠而不是構造函數( Maps.newHashMap() ),鐘情于組合而不是繼承(ForwardXXX這類集合)。
如果你是使用 Maven 來作Java/Android項目管理,可以在pom.xml中 dependencies 下添加對Guava的依賴,然后在 IntelliJ IDEA 重新導入(Reimport)這個項目,讓Maven下載Guava對應版本的jar包,就可以使用Guava提供的眾多API了。如果在IntelliJ IDEA中跳轉到了Guava的代碼中,可以使用右上角提示的"Download Source"來下載對應的源碼。
<dependency> <groupId>com.google.guava</groupId> <artifactId>guava</artifactId> <version>19.0</version> </dependency>
本系列目錄如下,目前只寫了1,后續會逐漸補上:
- 集合(Collection)相關的API
- 實用的基礎工具類
- IO API
- 緩存(Cacheing) API
- 并發編程(Concurrency)
參考資料:
Friends of Guava </div> </div>