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
JoineretSplitterpour 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) Aussi dans la bibliothèque
Génération de PDF en C++ : bibliothèques, outils et exemples de code
frozen pour C++ : guide complet avec exemples
Envoi d'email en Rust : bibliothèques lettre et async-smtp pour les mailings
Travailler avec Excel en Swift : Guide complet des bibliothèques et outils pour iOS/macOS