Google Guava | |
---|---|
Тип | Utility and Collection Libraries |
Автор | Kevin Bourrillion and Jared Levy (Google Collections Library)[1] |
Разработчик | |
Написана на | Java |
Операционная система | Cross-platform |
Первый выпуск | 15 сентября 2009[2] |
Аппаратная платформа | Java Virtual Machine |
Последняя версия | 31.1 (28 февраля 2022[3]) |
Репозиторий | github.com/google/guava |
Лицензия | Apache License 2.0 |
Сайт | github.com/google/guava |
Google Guava — набор общих библиотек с открытым кодом для языка программирования Java, в основном разрабатываемый инженерами Google.
Google Guava может быть грубо разделена на три компонента: основные утилиты для уменьшения ручной работы для реализации распространенных методов и поведений, расширение Java collections framework (JCF) ранее называемое Google Collections Library, и других утилит, которые предоставляют удобные и производительные функции, такие как функциональное программирование, графы, кешинг, объекты диапазона, и хеширование[4].
Создание и архитектура коллекций компонент была частично мотивирована дженериками представленными в JDK 1.5[1]. Хотя дженерики улучшают продуктивность программистов, стандартный JCF не предоставляет достаточно функциональности, и его дополнение Коллекции Apache Commons не адаптировали дженерики для того, чтобы поддерживать обратную совместимость[1]. Этот факт привел двух инженеров Кевина Бурильона и Джареда Леви к разработке расширения для JCF, которое предоставляет дополнительные классы дженериков, такие как мультимножества, многомерные ассоциативные массивы, bitmaps, и неизменяемые коллекции[1].
Решения по поводу дизайна и кода библиотек были проконсультированы и рассмотрены Джошуа Блох, первоначальным ведущим дизайнероом Java Collections framework, и Даг Ли, одним из ведущих дизайнеров утилит для параллелизма в JDK[1].
По состоянию на апрель 2012 года, Guava заняла 12-е место среди самых популярных библиотек Java, встав рядом с проектами Apache Commons и несколькими другими[5]. Исследования, проведенные в 2013 году на 10,000 проектах GitHub обнаружили, что библиотеки созданные Google, такие как Google Web Toolkit и Guava, составили 7 из топа 100 самых популярных библиотек Java, а Guava была 8-й самой популярной библиотекой Java[6]. По состоянию на март 2018 года, Guava была 6-м самым популярным проектом на GitHub[7].