Google Guava

出典: フリー百科事典『ウィキペディア(Wikipedia)』
移動: 案内検索
Google Guava
作者 Kevin Bourrillion and Jared Levy (Google Collections Library) [1]
開発元 Google
最新版 14.0.1 / 2013年3月15日(19か月前) (2013-03-15
プログラミング言語 Java
対応OS クロスプラットフォーム
サポート状況 Active
種別 ユーティリティ・コレクションライブラリ
ライセンス Apache License 2.0
公式サイト code.google.com/p/guava-libraries/
テンプレートを表示

Google Guavaとは、オープンソースJavaライブラリで、Javaのプログラミングで共通して使われるユーティリティライブラリをまとめたもの。主にGoogleのエンジニアによって開発されている。

概要[編集]

Google Guavaは、主に三つのコンポ―ネントにわけられている。

  • 共通メソッドや振る舞いを簡潔に実装するための基本ライブラリ。hashCodeなどの実装や前提条件チェックなどのコード量を減らすことができる。
  • 標準ライブラリのJava Collections Frameworkへの拡張。以前はGoogle Collections Libraryと呼ばれていた。
  • その他のユーティリティライブラリで、関数型プログラミング、キャッシュ、区間オブジェクト、ハッシュなどをサポートする。

JDK 1.5でJavaに総称型が導入されたが、標準のコレクション・フレームワークは十分な機能を有しているとはいえず、また代表的なユーティリティ・ライブラリであるApache Commons Collectionsは、後方互換性を維持するために総称型への対応を行わなかった。こうした状況に対処するため、GoogleのエンジニアであるKevin BourrillionとJared Levyが社内の「20%ルール」を使い、総称型をサポートしつつ高機能なコレクションクラスを提供するGoogle Collections Libraryを開発した[1]のが、Guavaの先駆けである。そのため、Guavaのコレクションフレームワークはライブラリの中でも特に強力で、マルチセット、マルチマップ、双方向マップ、不変コレクション型などの多種多様なクラスが実装されている。また、デザインやコードの監修には、ベストセラーEffective Javaの著者ジョシュア・ブロックや、Javaの並列プログラミング用標準ライブラリを策定したダグ・リーen:Doug Lea)などが関わっていた。[1]

Sonatype社の調査によれば、2012年4月時点で、Apache Commonsのプロジェクト群などに次いで、Guavaは12番目に最も人気なJavaライブラリとなっている。[2]

関連項目[編集]

脚注[編集]

  1. ^ a b c Wielenga, Geertjan (2007年10月23日). “What is the Google Collections Library?”. Javalobby. 2013年2月3日閲覧。
  2. ^ O'Brien, Tim (2012年5月14日). “Google Guava Shows Strong Growth in April”. Sonatype. 2013年2月3日閲覧。

外部リンク[編集]