Document ID: /fineweb-2-swissfilter-quality_10-filterrobots/filtered/06921.jsonl.gz/547

En génie logiciel, le poids-mouche (anglais : flyweight) est un patron de conception (design pattern) structurel décrit en 1995 par le Gang of Four.
Lorsque de nombreux (petits) objets doivent être manipulés, mais qu'il serait trop coûteux en mémoire s'il fallait instancier tous ces objets, il est judicieux d'implémenter le poids-mouche.
Dans le cas d'une classe représentant des données, il est parfois possible de réduire le nombre d'objets à instancier si tous ces objets sont semblables et se différencient sur quelques paramètres. Si ces quelques paramètres peuvent être extraits de la classe et passés ensuite via des paramètres des méthodes, on peut réduire grandement le nombre d'objets à instancier.
Le patron poids-mouche est l'approche pour utiliser de telles classes. D'une part la classe avec ses données internes qui la rendent unique, et d'autre part les données externes passées à la classe en tant qu'arguments. Ce modèle est pratique pour des petites classes très simples.