Vous êtes sur la page 1sur 1

le pattern singleton

Le Pattern Singleton : définition


Maintenant que vous avez l’implémentation classique
de Singleton en tête, il est temps de vous installer
confortablement, de déguster une barre de chocolat et
d’étudier de plus près les subtilités du Pattern Singleton.

Commençons par la définition concise du pattern :

Le Pattern Singleton garantit qu’une classe n’a


qu’une seule instance et fournit un point d’accès global
à cette instance.

Jusque là, pas de surprises. Mais décomposons un peu plus :

� Que se passe-t-il réellement ? Nous prenons une classe et nous lui faisons
gérer une seule instance d’elle-même. Nous empêchons également toute autre
classe d’en créer une autre instance. Pour obtenir une instance, vous devez
passer par la classe elle-même.
� Nous fournissons également un point d’accès global à cette instance : chaque
fois que vous en avez besoin, il suffit de demander à la classe et celle-ci vous
retournera cette instance unique. Comme vous l’avez constaté, nous pouvons
avoir une implémentation telle que le Singleton soit créé à la demande, ce qui
est particulièrement important pour les objets gourmands en ressources.

Bien. Voyons le diagramme de classes :


e, Ce
a n c e ( ) e st statiquclasse.
de getIns t thode de La variable de classe
La méthoie que c’est une méà cette méthode uniqueInstance contient
qui signif vez donc accédere votre code en notre seule et unique
Vous pouorte quel point d ance(). C’est instance de Singleton.
de n’imp Singleton.getInstcéder à une vari- Singleton

utilisant si facile que d’ac ton nous apporte static uniqueInstance


tout aus ale, mais le Singlee la l’instanciation // Autres attributs du Singleton...
able glob avantages, comm
d’autres ande. static getInstance()
à la dem // Autres méthodes du Singleton...

Une classe mettant en œupluvre


est s
le Pattern Singleton e classe
un
qu’un Singleton : c’est son propre
généraliste qui possède de méthodes.
ensemble d’attributs et
vous êtes ici � 177

Vous aimerez peut-être aussi