Junior — Middle
Обяснете концепцията за патърна Singleton и неговото използване в програмирането.
sobes.tech AI
Отговор от AI
Моделът Singleton гарантира, че даден клас има само един екземпляр и предоставя глобална точка за достъп до този екземпляр.
Използва се, когато е необходимо да се контролира достъпът до ресурси като база данни, логер или конфигурация.
Пример на 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;
}
}
public void DoSomething()
{
// Логика
}
}
Този подход осигурява безопасност при многонитови среди и лениво инициализиране на екземпляра.