Guava pour Java : guide complet avec exemples

Formateur Python en ligne pour débutants

Apprenez Python facilement sans surcharge théorique. Résolvez des tâches pratiques avec vérification automatique et écrivez du code directement dans le navigateur.

Start Course

Qu'est-ce que Guava et pourquoi l'utiliser ?

Guava est une bibliothèque open source puissante développée par Google, qui fournit un ensemble d'utilitaires de haute qualité pour le langage Java. Elle est conçue pour rendre le code Java plus concis, fiable et performant, en résolvant de nombreuses tâches courantes rencontrées par les développeurs.

Pourquoi utiliser Guava ? La bibliothèque standard Java (JDK) offre des fonctionnalités de base, mais laisse souvent à désirer en termes de confort et de sécurité. Guava comble ces lacunes en proposant :

  • Simplification de la gestion des collections : Création de collections immuables, filtrage, transformation, regroupement : tout devient beaucoup plus simple.
  • Mise en cache : Un framework puissant et flexible pour la mise en cache des données en mémoire.
  • Traitement des primitifs : Utilitaires pour travailler avec des tableaux de types primitifs (int, long, double, etc.).
  • Opérations sur les chaînes : Des classes pratiques comme Joiner et Splitter pour manipuler les chaînes de caractères.
  • Fonctions et prédicats : Un style de programmation fonctionnelle (bien que moins concis qu'avec Java 8+, il reste utile).
  • Vérification des préconditions (Preconditions) : Une alternative élégante aux vérifications manuelles de null et autres conditions.
  • Hachage : Utilitaires pour créer des fonctions de hachage.
  • Threads et concurrence : Utilitaires pour la programmation multithread, y compris ListenableFuture.

Si vous développez en Java et souhaitez améliorer la qualité et la rapidité de votre développement, Guava est une bibliothèque incontournable.

Installation de Guava

Guava ne s'installe pas via pip ou npm, car c'est une bibliothèque Java. Elle est distribuée via des systèmes de gestion de dépendances comme Maven ou Gradle.

Installation avec Maven (pom.xml)

Ajoutez le code suivant dans la section <dependencies> de votre fichier pom.xml :

<dependency>
    <groupId>com.google.guava</groupId>
    <artifactId>guava</artifactId>
    <version>33.2.0-jre</version> <!-- Utilisez la dernière version -->
</dependency>

Installation avec Gradle (build.gradle)

Ajoutez dans la section dependencies :

implementation 'com.google.guava:guava:33.2.0-jre'

Installation manuelle (téléchargement du JAR)

Vous pouvez également télécharger le fichier JAR depuis la page des releases GitHub de Guava et l'ajouter au classpath de votre projet.

Important : La version 33.2.0-jre est destinée à Java 8 et versions ultérieures. Pour les versions plus anciennes de Java, utilisez la version android (par exemple, 33.2.0-android).

Démarrage rapide avec un exemple de code

Écrivons un programme simple qui illustre plusieurs fonctionnalités clés de Guava.

import com.google.common.base.Joiner;
import com.google.common.base.Splitter;
import com.google.common.collect.ImmutableList;
import com.google.common.collect.Lists;

import java.util.List;

public class GuavaQuickStart {
    public static void main(String[] args) {
        // 1. Création d'une liste immuable
        ImmutableList<String> names = ImmutableList.of("Alice", "Bob", "Charlie");
        System.out.println("Noms : " + names); // [Alice, Bob, Charlie]

        // 2. Concaténation de chaînes avec Joiner
        String joined = Joiner.on(", ").join(names);
        System.out.println("Noms concaténés : " + joined); // Alice, Bob, Charlie

        // 3. Division d'une chaîne avec Splitter
        String csv = "pomme,banane,,raisin";
        Iterable<String> fruits = Splitter.on(",")
                .trimResults()
                .omitEmptyStrings()
                .split(csv)                    

Recommendations