Sobes.tech
Junior — Middle

Singleton naqshining konseptini va uning asosiy xususiyatlarini tushuntiring.

sobes.tech AI

AIdan javob

Singleton naqshoni, sinfning faqat bitta nusxasi bo'lishini ta'minlaydi va bu nusxaga global kirish nuqtasini taqdim etadi.

Singletonning asosiy xususiyatlari:

  • Faqat bitta nusxa: sinf ob'ektni yaratishni nazorat qiladi va undan ko'p bo'lishini oldini oladi.
  • Global kirish imkoniyati: nusxa har qanday dastur qismidan kirish mumkin.
  • Keçikkan boshlanish: ob'ekt birinchi murojaatdan so'ng yaratiladi (ko'pincha).

C# misoli:

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;
        }
    }
}

Ushbu naqsh, resurslar yoki sozlamalarni markazlashtirilgan tarzda boshqarish zarur bo'lsa, foydalidir, masalan, log fayl yoki konfiguratsiya uchun.