Google Guava

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску
Google Guava
Тип Utility and Collection Libraries
Автор Kevin Bourrillion and Jared Levy (Google Collections Library)[1]
Разработчик Google
Написана на Java
Операционная система Cross-platform
Первый выпуск 15 сентября 2009; 15 лет назад (2009-09-15)[2]
Аппаратная платформа Java Virtual Machine
Последняя версия 31.1 (28 февраля 2022; 2 года назад (2022-02-28)[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].

Примечания

[править | править код]
  1. 1 2 3 4 5 Wielenga, Geertjan What is the Google Collections Library? Javalobby (23 октября 2007). Дата обращения: 3 февраля 2013. Архивировано из оригинала 19 ноября 2015 года.
  2. Release History . Google Guava. GitHub. Дата обращения: 15 февраля 2023. Архивировано 5 февраля 2023 года.
  3. Releases . Google Guava. GitHub. Дата обращения: 15 февраля 2023. Архивировано 15 февраля 2023 года.
  4. Home · google/Guava Wiki. GitHub. Дата обращения: 15 февраля 2023. Архивировано 5 февраля 2023 года.
  5. O'Brien, Tim Google Guava Shows Strong Growth in April. Sonatype (14 мая 2012). Дата обращения: 3 февраля 2013. Архивировано 15 февраля 2013 года.
  6. Weiss, Tal We Analyzed 30,000 GitHub Projects – Here Are The Top 100 Libraries in Java, JS and Ruby (20 ноября 2013). Дата обращения: 4 февраля 2014. Архивировано из оригинала 9 июля 2014 года.
  7. Build software better, together (англ.). GitHub. Дата обращения: 22 ноября 2018. Архивировано 6 декабря 2022 года.