Sobes.tech
Junior — Middle

Explique le concept du pattern Singleton et son utilisation en programmation.

sobes.tech IA

Réponse de l'IA

Le motif Singleton garantit qu'une classe n'a qu'une seule instance et fournit un point d'accès global à cette instance.

Il est utilisé lorsque vous devez contrôler l'accès aux ressources, comme une base de données, un journal ou une configuration.

Exemple en C# :

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

    // Le constructeur privé empêche la création d'instances depuis l'extérieur
    private Singleton() { }

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

    public void DoSomething()
    {
        // Logique
    }
}

Cette approche garantit la sécurité dans les environnements multithreads et l'initialisation paresseuse de l'instance.