Junior — Middle
Wyjaśnij koncepcję wzorca Singleton i jego zastosowanie w programowaniu.
sobes.tech AI
Odpowiedź od AI
Wzorzec Singleton gwarantuje, że klasa ma tylko jedną instancję i zapewnia globalny punkt dostępu do tej instancji.
Używany jest, gdy konieczne jest kontrolowanie dostępu do zasobów, takich jak baza danych, logger lub konfiguracja.
Przykład w C#:
public class Singleton
{
private static Singleton _instance;
private static readonly object _lock = new object();
// Prywatny konstruktor uniemożliwia tworzenie instancji spoza klasy
private Singleton() { }
public static Singleton Instance
{
get
{
if (_instance == null)
{
lock (_lock)
{
if (_instance == null)
{
_instance = new Singleton();
}
}
}
return _instance;
}
}
public void DoSomething()
{
// Logika
}
}
Takie podejście zapewnia bezpieczeństwo w środowiskach wielowątkowych i leniwą inicjalizację instancji.