Sobes.tech
Junior — Middle

A Singleton minta fő célja mi, és milyen esetekben alkalmazzák?

sobes.tech MI

Válasz az MI-től

A Singleton minta garantálja, hogy egy osztálynak csak egy példánya legyen, és globális hozzáférési pontot biztosít ehhez a példányhoz. Ez akkor hasznos, amikor kontrollálni kell egy erőforráshoz, például adatbázishoz, alkalmazásbeállításokhoz vagy naplózóhoz való hozzáférést.

A Singleton-t akkor alkalmazzuk, amikor:

  • Szükséges az objektumok létrehozásának korlátozása egy példányra.
  • Központosított állapot- vagy erőforrás-ellenőrzés szükséges.
  • Biztosítani kell a globális hozzáférést az objektumhoz anélkül, hogy paraméterként át kellene adni.

PHP példával:

class Singleton {
    private static ?Singleton $instance = null;

    private function __construct() {
        // privát konstruktor
    }

    public static function getInstance(): Singleton {
        if (self::$instance === null) {
            self::$instance = new Singleton();
        }
        return self::$instance;
    }
}

// Használat
$instance = Singleton::getInstance();