Junior
Singleton nümunəsi nədir?
sobes.tech Süni İntellekt
AI-dan cavab
Singleton — bu yaradılış dizayn nümunəsidir və hər an yalnız bir sinif nümunəsinin mövcud olmasını təmin edir və qlobal olaraq əlçatandır. Bu, resursların və ya konfiqurasiyaların mərkəzləşdirilmiş idarə olunması üçün istifadə olunur.
Swift-də nümunə:
class Singleton {
static let shared = Singleton() // Yeganə nümunə üçün statik xüsusiyyət
private init() { // Xaricdən yeni nümunələrin yaradılmasını əngəlləyən xüsusi konstruktor
// Singleton-un konfiqurasiyası
}
func someMethod() {
// Singleton-un loqikası
}
}
// Singleton-dən istifadə
let instance = Singleton.shared
instance.someMethod()
Üstünlüklər:
- Yeganə nümunənin mövcud olmasını təmin edir.
- Nümunəyə tək giriş nöqtəsi.
Çatışmazlıqlar:
- Testləri çətinləşdirə bilər (mock ilə əvəz etmək çətindir).
- Yeganə məsuliyyət prinsipini pozur (sinif öz loqikasını və nümunə idarəsini idarə edir).
- Sinxronlaşdırılmayıbsa, çoxmərhələli problemlərə səbəb ola bilər.