Aller au contenu
uencoder

Singleton Pattern

Le pattern singleton garantit qu'une classe n'a qu'une seule instance et fournit un point d'accès global, utilisé pour l'état partagé ou la gestion de ressources.

Objectif

Contrôler la création d'instances pour des ressources globales telles que configuration, journalisation et pools de connexions.

Mécanisme

Constructeur privé + instance statique + méthode d'accès globale. La sécurité des threads exige du double-checked locking ou de l'initialisation statique. Critiqué : introduit un état global, cache les dépendances, rend les tests difficiles. Préférer l'injection de dépendances aux singletons.

Cas d’usage

  • Gestion d'état global
  • Partage de ressources
  • Conception de patterns

Termes associés

References