구글 구아바(Google Guava)는 자바용 공통 라이브러리의 오픈 소스 집합으로서, 구글 공학자들이 주로 개발하였다.
개요
구글 구아바는 대체적으로 3개의 구성요소로 나눌 수 있다: 공통 메소드와 동작을 구현하기 위해 수동 작업을 줄이는 기본 유틸리티, 한때 구글 컬렉션스 라이브러리(Google Collections Library)로 불렸던 자바 컬렉션스 프레임워크(JCF)의 확장 기능, 함수형 프로그래밍, 그래프, 캐시 처리, 레인지 오브젝트, 해싱 등 편리하고 생산적인 기능을 제공하는 기타 유틸리티.[3]
컬렉션 컴포넌트의 생성과 구조는 부분적으로 JDK 1.5에 도입된 제네릭에서 동기를 얻었다.[1] 제네릭이 프로그래머의 생산성을 개선하지만 표준 JCF은 충분한 기능을 제공하지 않으며 그 보완재인 아파치 커먼즈 컬렉션은 하위 호환성 유지를 위해 제네릭을 채택하지 않았다.[1] 이러한 사실로 인해 공학자 Kevin Bourrillion과 Jared Levy는 중복집합, 멀티맵, 비트맵, 이뮤터블 컬렉션 등 추가적인 제네릭 클래스를 제공하는 JCF의 확장 기능을 개발하게 되었다.[1]
라이브러리의 디자인과 코드의 고문과 검토는 자바 컬렉션 프레임워크의 수석 디자이너 조슈아 블로치, JDK의 컨커런시 유틸리티 수석 디자이너의 한 명인 Doug Lea가 맡았다.[1]
2012년 4월 기준으로, 구아바는 인기있는 자바 라이브러리 12위로 순위를 올렸다.[4]
같이 보기
각주
외부 링크