Quel est le modèle Singleton?
Le concept mathématique d'un singleton est un ensemble de numéros qui ne contient qu'un seul nombre. Les ingénieurs en logiciel et les programmeurs ont traduit ce concept en un modèle appelé modèle singleton, dans lequel un ensemble spécifique d'informations est accédé une seule fois par divers programmes et contient toujours le même ensemble d'instructions ou d'informations. Le modèle singleton est utilisé dans des langages de programmation tels que Java pour définir une variable globale, une information utilisée dans un système entier qui reste identique et doit être définie une seule fois au lieu de plusieurs fois.
Dans la plupart des langages de programmation, avant qu'un programme puisse être exécuté, il nécessite des informations supplémentaires sur son environnement. La plupart des informations spécifiques au programme sont contenues dans son propre code de programme; Cependant, un programme nécessite souvent des informations variables sur la version du système d'exploitation dans laquelle il s'exécute, le matériel sur lequel il est exécuté et d'autres informations spécifiques non propres au programme. Habituellement, ces informations sont contenues dans quelque chose appelée classe ou objet, qui est un élément de code de programmation indépendant souvent contenu dans un fichier distinct du programme, de sorte qu'il peut être disponible simultanément pour de nombreux programmes différents.
Si un langage de programmation n'utilise pas le modèle singleton, chaque programme nécessitant des informations contenues dans un objet y accède en ouvrant l'objet avec un ensemble de paramètres spécifiant les informations dans l'objet nécessaires au programme. Par conséquent, chaque fois qu'un programme différent ouvre l'objet, une instance différente de l'objet est créée dans la mémoire de l'ordinateur. Chaque instance de l'objet peut contenir des informations différentes, en fonction des besoins spécifiques de chaque programme qui l'ouvre.
Lorsqu'un langage de programmation qui utilise le modèle singleton, tel que Java, commence à exécuter un programme, le programme recherche d'abord les objets à partir desquels il a besoin d'informations. Si un objet n'est pas déjà ouvert, l'objet est ouvert sans aucun paramètre spécifique, rendant toutes les informations contenues dans l'objet disponibles pour tous les programmes. Si l'objet est déjà ouvert, il lit simplement les informations qu'il contient et continue. De cette manière, les informations contenues dans un objet utilisant un motif singleton sont toujours les mêmes. Il n'est donc pas nécessaire d'ouvrir plusieurs versions différentes de l'objet simultanément. Cela économise de l'espace dans la mémoire de l'ordinateur et peut également augmenter la vitesse, car d'autres programmes peuvent accéder aux informations sans perdre de temps à créer une nouvelle version de l'objet.