Junior — Middle
Care este scopul principal al pattern-ului Singleton și în ce cazuri se aplică?
sobes.tech AI
Răspuns de la AI
Modelul Singleton garantează că o clasă are o singură instanță și oferă un punct de acces global la acea instanță. Acest lucru este util atunci când trebuie controlat accesul la o resursă, cum ar fi o bază de date, setările aplicației sau un logger.
Se aplică Singleton atunci când:
- Este necesar să se limiteze crearea obiectelor la o singură instanță.
- Este necesar un control centralizat al stării sau resurselor.
- Este necesar să se asigure accesul global la obiect fără a-l transmite ca parametru.
Exemplu în PHP:
class Singleton {
private static ?Singleton $instance = null;
private function __construct() {
// constructor privat
}
public static function getInstance(): Singleton {
if (self::$instance === null) {
self::$instance = new Singleton();
}
return self::$instance;
}
}
// Utilizare
$instance = Singleton::getInstance();