IHEC - Carthage
Singleton
AL - 2BI
Design Patterns (support de cours)
Singleton est un patron de conception de création qui vous permet de vous assurer qu'une
classe n'a qu'une seule instance, tout en fournissant un point d'accès global à cette instance.
1. Structure
Diagramme
description
1. Le niveau d'accès du constructeur est modifié en privé pour bloquer la création
d'instance depuis l'extérieur de la classe.
2. Un attribut du même type que l'objet est ajouté à la classe (doit être statique).
3. Une méthode dont l rôle est de fournir un objet est ajoutée, cette méthode est statique.
Lorsqu'un code appelle la méthode, cette dernière vérifie si une instance est déjà
créée, sinon elle en crée une nouvelle.
4. Il est possible de synchroniser l'accès à l'instance en cas de possibilté d'appel
concurrent.
2. Pseudo code
(voir l'exemple de cours)
3. Application (quand utiliser)
1. Utilisez le modèle Singleton lorsqu'une classe de votre programme ne doit avoir qu'une
seule instance disponible pour tous les clients; par exemple, un seul objet de base de
données partagé par différentes parties du programme.
Singleton Page 1
AL – Les patrons de conception Sur 1