Le Composite est un patron de conception structurel qui permet d’agencer les objets dans une structure ressemblant à une arborescence, afin de pouvoir la traiter comme un objet individuel.
Le composite est devenu la solution la plus populaire pour régler les problèmes d’une structure arborescente. Il offre une fonctionnalité très pratique qui permet de parcourir récursivement toute l’arborescence et d’additionner les résultats.
Essayons de comprendre le patron de conception composite en utilisant un exemple basé sur le système de fichiers d’un système d’exploitation. Dans le système de fichiers, nous trouverons deux types d’objets : des fichiers et des dossiers. Dans certains cas, les fichiers et dossiers seront traités de la même manière. C’est ici que le composite nous vient en aide.
Imaginez que vous devez lancer une recherche sur un mot-clef particulier dans votre système de fichiers. Ce traitement va concerner les fichiers et les dossiers. Pour un fichier, il regarde juste son contenu et pour un dossier, il parcourt tous ses fichiers pour trouver le mot-clef.