Junior — Middle
Quel est l'objectif principal du pattern Singleton et dans quels cas l'applique-t-on?
sobes.tech IA
Réponse de l'IA
Le patron Singleton garantit qu'une classe n'a qu'une seule instance et fournit un point d'accès global à cette instance. Cela est utile lorsque vous devez contrôler l'accès à une ressource, comme une base de données, des paramètres d'application ou un journal.
On utilise Singleton lorsque :
- Il faut limiter la création d'objets à une seule instance.
- Un contrôle centralisé de l'état ou des ressources est nécessaire.
- Il faut assurer un accès global à l'objet sans le passer en paramètre.
Exemple en PHP :
class Singleton {
private static ?Singleton $instance = null;
private function __construct() {
// constructeur privé
}
public static function getInstance(): Singleton {
if (self::$instance === null) {
self::$instance = new Singleton();
}
return self::$instance;
}
}
// Utilisation
$instance = Singleton::getInstance();