Junior — Middle
Explicați conceptul de pattern Singleton și caracteristicile sale principale.
sobes.tech AI
Răspuns de la AI
Modelul Singleton garantează că o clasă are o singură instanță și oferă un punct de acces global la acea instanță.
Caracteristici principale ale Singleton-ului:
- O singură instanță: clasa controlează crearea obiectului pentru a evita mai multe.
- Accesibilitate globală: instanța este disponibilă din orice parte a programului.
- Inițializare întârziată: obiectul este creat la prima solicitare (adesea).
Exemplu în 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;
}
}
}
Acest pattern este util atunci când trebuie gestionate resurse sau configurații în mod centralizat, de exemplu, pentru un jurnal sau o configurație.