| Google Guava | ||
|---|---|---|
| Información general | ||
| Tipo de programa | Bibliotecas de utilidades y colecciones | |
| Autor | Kevin Bourrillion y Jared Levy (Google Collections Library) | |
| Desarrollador | ||
| Licencia | Apache License 2.0 | |
| Estado actual | Activo | |
| Información técnica | ||
| Programado en | Java | |
| Versiones | ||
| Última versión estable | 33.5.0 ([github.com/google/guava/releases/tag/v33.5.0 info]) (17 de septiembre de 2025 (1 año y 26 días)) | |
| Enlaces | ||
Google Guava es un conjunto de bibliotecas comunes de código abierto para Java, desarrollado principalmente por ingenieros de Google.
Google Guava puede ser dividido en tres componentes: utilidades básicas para reducir labores menores para implementar métodos y comportamientos comunes, una extensión a Java collections framework (JCF) anteriormente llamada Google Collections Library, y otras utilidades que proporcionan características convenientes y productivas tales como programación funcional, almacenamiento en caché, objetos de rango y hashing.
La creación y la arquitectura del componente de colección fueron motivadas en parte por los genéricos introducidos en el JDK 1.5. A pesar de que los genéricos mejoran la productividad de los programadores, el estándar JCF no proporciona suficiente funcionalidad, y su complemento Apache Commons Collections no ha adoptado los genéricos con el fin de mantener la retrocompatibilidad. Este hecho llevó a dos ingenieros, Kevin Bourrillion y Jared Levy, a desarrollar una extensión de JCF, que proporciona clases genéricas adicionales, tales como multisets, multimaps, bimaps y colecciones inmutables.
El diseño y código de la biblioteca fueron revisados por Joshua Bloch, el diseñador jefe original del Java Collections framework, y Doug Lea, uno de los diseñadores principales de las utilidades de concurrencia del JDK.
A fecha de abril de 2012, Guava ocupa el 12º puesto de las bibliotecas Java más populares, tras los proyectos de Apache Commons y algunos otros. Una investigación realizada en 2013 en 10.000 proyectos de GitHub descubrió que bibliotecas hechas por Google, como Google Web Toolkit y Guava, consisten en 7 de las 100 bibliotecas más populares de Java, y que Guava es la octava más popular biblioteca de Java.
Si bien Guava es un proyecto de código abierto, no se alienta que terceros externos a Google contribuyan a su desarrollo. Kevin Bourrillion escribió en una entrada en Google+ explicando que aunque Guava es de código abierto es también una colección de API a la que se hace referencia en toda la base de código interno de Google. Bourrillion escribió: "No creo que muchos de ustedes entiendan:. El trabajo hecho para producir un parche en realidad es minúsculo en comparación con la cantidad total de trabajo que tenemos que hacer para aplicar ese parche en Guava" Este post y la reacción a esta entrada provocó un debate sobre la naturaleza pública o privada de proyectos como Google Guava y un amplio debate sobre lo que constituye un proyecto de código abierto