O que é Guava e para que serve?
\n\nGuava é uma poderosa biblioteca de código aberto do Google que fornece um conjunto de utilitários de alta qualidade para a linguagem Java. Ela foi criada para tornar o código Java mais conciso, confiável e eficiente, resolvendo muitas tarefas típicas que os desenvolvedores enfrentam.
\n\nPara que serve Guava? A Java Standard Library (JDK) fornece funcionalidades básicas, mas muitas vezes deixa a desejar em termos de conveniência e segurança. Guava preenche essas lacunas, oferecendo:
\n- \n
- Simplificação do trabalho com coleções: Criação de coleções imutáveis, filtragem, transformação, agrupamento — tudo isso se torna muito mais simples. \n
- Cache: Um framework poderoso e flexível para cache de dados em memória. \n
- Manipulação de primitivos: Utilitários para trabalhar com arrays de tipos primitivos (int, long, double, etc.). \n
- Operações com strings: Classes convenientes para trabalhar com strings, como
JoinereSplitter. \n - Trabalho com funções e predicados: Estilo de programação funcional (embora não tão conciso quanto no Java 8+, ainda assim útil). \n
- Verificação de pré-condições (Preconditions): Uma substituição elegante para verificações manuais de null e outras condições. \n
- Trabalho com hashing: Utilitários para criar funções hash. \n
- Threads e concorrência: Utilitários para trabalhar com multithreading, incluindo
ListenableFuture. \n
Se você programa em Java e deseja aumentar a qualidade e a velocidade do desenvolvimento, Guava é uma biblioteca indispensável.
\n\nInstalação do Guava
\n\nGuava não é instalado via pip ou npm, pois é uma biblioteca para Java. Ela é distribuída através de sistemas de gerenciamento de dependências, como Maven ou Gradle.
\n\nInstalação via Maven (pom.xml)
\nAdicione o seguinte código na seção <dependencies> do seu arquivo pom.xml:
<dependency>\n <groupId>com.google.guava</groupId>\n <artifactId>guava</artifactId>\n <version>33.2.0-jre</version> <!-- Use a versão mais recente -->\n</dependency>\n\nInstalação via Gradle (build.gradle)
\nAdicione na seção dependencies:
implementation 'com.google.guava:guava:33.2.0-jre'\n\nInstalação manual (baixando o JAR)
\nVocê também pode baixar o arquivo JAR do lançamento do Guava no GitHub e adicioná-lo ao classpath do seu projeto.
\n\nImportante: A versão 33.2.0-jre é destinada ao Java 8 e superior. Para versões mais antigas do Java, use a versão android (por exemplo, 33.2.0-android).
Início rápido com exemplo de código
\n\nVamos escrever um programa simples que demonstra vários recursos principais do Guava.
\n\nimport com.google.common.base.Joiner;\nimport com.google.common.base.Splitter;\nimport com.google.common.collect.ImmutableList;\nimport com.google.common.collect.Lists;\n\nimport java.util.List;\n\npublic class GuavaQuickStart {\n public static void main(String[] args) {\n // 1. Criação de uma lista imutável\n ImmutableList<String> names = ImmutableList.of("Alice", "Bob", "Charlie");\n System.out.println("Nomes: " + names); // [Alice, Bob, Charlie]\n\n // 2. Junção de strings com Joiner\n String joined = Joiner.on(", ").join(names);\n System.out.println("Nomes unidos: " + joined); // Alice, Bob, Charlie\n\n // 3. Divisão de string com Splitter\n String csv = "apple,banana,,grape";\n Iterable<String> fruits = Splitter.on(",")\n .trimResults()\n Também na biblioteca
Event Bus e padrão Observer em PHP: implementação e exemplos
Trabalho com imagens em PHP: redimensionamento e corte (resize, crop)
Autorização e Autenticação em Go: pacotes e exemplos práticos
Processamento de Markdown em Node.js: bibliotecas marked, showdown e remarkable