Sobes.tech
Junior — Middle

Vysvetlite koncept vzoru Singleton a jeho hlavné vlastnosti.

sobes.tech AI

Odpoveď od AI

Vzor Singleton zabezpečuje, že trieda má iba jednu inštanciu a poskytuje globálny prístup k tejto inštancii.

Hlavné vlastnosti Singletonu:

  • Len jedna inštancia: trieda riadi vytváranie objektu, aby nedošlo k viacnásobnému.
  • Globálna dostupnosť: inštancia je dostupná z ktorejkoľvek časti programu.
  • Oneskorená inicializácia: objekt je vytvorený pri prvom volaní (často).

Príklad v C#:

public class Singleton
{
    private static Singleton _instance;
    private static readonly object _lock = new object();

    private Singleton() { }

    public static Singleton Instance
    {
        get
        {
            if (_instance == null)
            {
                lock (_lock)
                {
                    if (_instance == null)
                        _instance = new Singleton();
                }
            }
            return _instance;
        }
    }
}

Tento vzor je užitočný, keď je potrebné centralizovane spravovať zdroje alebo konfigurácie, napríklad pre logger alebo konfiguráciu.