Използвате сингълтони за предоставяне на глобално достъпен, споделен екземпляр на клас Тази дефиниция не е уникална за документацията на Apple. Статията в Уикипедия, която свързах по-горе, също гласи, че „Една реализация на единичния модел трябва да осигури глобален достъп до този екземпляр.“
Защо singleton се използва в Swift?
Singleton е създаващ модел на дизайн, който гарантира, че съществува само един обект от този вид и осигурява една точка за достъп до него за всеки друг код. Singleton има почти същите плюсове и минуси като глобалните променливи. Въпреки че са супер удобни, те нарушават модулността на вашия код.
Кога не трябва да използвате сингълтон?
Единствената ситуация, в която трябва да помислите за сингълтон, е, когато наличието на повече от един екземпляр на вече глобални данни всъщност би било логическа грешка или грешка при хардуерен достъп.
. …
Сродни връзки:
- Крехкост, предизвикана от Global State и Singletons.
- Инжекция на зависимост за избягване на сингълтони.
- Фабрики и сингълтони.
За какво сингълтън е добър?
Трябва да се използва сингълтон , когато се управлява достъп до ресурс, който се споделя от цялото приложение, и би било разрушително потенциално да има множество екземпляри от един и същи клас. Уверете се, че достъпът до споделени ресурси е безопасен за нишки е един много добър пример за това къде този вид модел може да бъде жизненоважен.
Сингълтън лош ли е Swift?
Singletons не са универсално лоши, но в много ситуации идват с набор от проблеми, които могат да бъдат избегнати чрез създаване на по-добре дефинирани връзки между вашите обекти и чрез използване на зависимост инжекция.