Sobes.tech
Junior — Middle

Aký je účel vzoru Singleton v softvérovej architektúre?

sobes.tech AI

Odpoveď od AI

Vzorec Singleton je zasnovan na načelu da osigura da u aplikaciji postoji samo jedan primer klase. Ovo je korisno kada je potrebno centralizovano upravljanje pristupom resursu, kao što je baza podataka ili konfiguracija.

Glavne karakteristike Singleton-a:

  • Garantuje jedinstveni primer klase.
  • Pruža globalnu tačku pristupa tom primeru.

Primer u PHP:

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

    private function __construct() {
        // privatni konstruktor koji sprečava kreiranje instanci spolja
    }

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

    public function doSomething() {
        echo "Izvršavanje akcije";
    }
}

// Upotreba
$singleton = Singleton::getInstance();
$singleton->doSomething();

Na ovaj način, Singleton pomaže u kontroli kreiranja objekata i sprečava dupliranje resursa.