Junior — Middle
Vysvětlete koncept vzoru Singleton a jeho hlavní vlastnosti.
sobes.tech AI
Odpověď od AI
Vzor Singleton zajišťuje, že třída má pouze jednu instanci a poskytuje globální přístup k této instanci.
Hlavní vlastnosti Singletonu:
- Pouze jedna instance: třída řídí vytváření objektu, aby nedošlo k více instancím.
- Globální dostupnost: instance je dostupná z kteréhokoliv místa v programu.
- Odložená inicializace: objekt je vytvořen při prvním volání (často).
Pří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žitečný, když je třeba centralizovaně spravovat zdroje nebo konfigurace, například pro logger nebo konfiguraci.