Suite à mes activités sur developpez.com, j’ai été récemment amené à traduire un article de Jon Skeet, Implementing the Singleton Pattern in C#. Jon Skeet est l’auteur du célèbre ouvrage “C# in Depth” aux éditions Manning, on peut donc dire que c’est un expert du langage C# et il a été très surprenant de découvrir les sujets pointus qu’il aborde.

L’article d’aujourd’hui concerne le pattern Singleton et les différentes façon dont il est possible de l’implémenter ainsi qu’une mise en garde des erreurs à éviter.

Le pattern singleton est un des patterns les plus connus dans le génie logiciel. Fondamentalement, un singleton est une classe qui permet une seule instance d’elle-même, et habituellement donne un accès simple à cette instance. Le plus souvent, des singletons n’autorisent aucun paramètre lors de la création de l’instance – dans le cas contraire d’une seconde demande pour une instance mais avec un paramètre différent, cela pourrait s’avérer problématique ! (Si la même instance devait être accédée par toutes les demandes avec le même paramètre, le pattern factory est plus approprié.) Cet article traite seulement le cas où aucun paramètre n’est requis. Typiquement, un critère des singletons est qu’ils sont créés en différé – c’est-à-dire que l’instance n’est créée que lors de la première fois où on en a besoin.

Traduction sur developpez.com.

Article original.