Gumagamit ka ng mga singleton upang magbigay ng globally accessible, shared instance ng isang klase Ang kahulugan na ito ay hindi natatangi sa dokumentasyon ng Apple. Ang artikulo sa Wikipedia na na-link ko sa itaas ay nagsasaad din na "Ang pagpapatupad ng singleton pattern ay dapat magbigay ng pandaigdigang access sa pagkakataong iyon. "
Bakit singleton ang ginagamit sa Swift?
Ang
Singleton ay isang pattern ng paglikha ng disenyo, na nagsisiguro na isang bagay lang sa uri nito ang umiiral at nagbibigay ng isang punto ng access dito para sa anumang iba pang code. Ang Singleton ay may halos parehong kalamangan at kahinaan gaya ng mga global na variable. Bagama't napakahusay ng mga ito, sinisira nila ang modularity ng iyong code.
Kailan ka hindi dapat gumamit ng singleton?
Ang tanging sitwasyon kung saan dapat mong isaalang-alang ang singleton ay kapag ang pagkakaroon ng higit sa isang instance ng global data na ay talagang isang logical o hardware access error.
Mga Kaugnay na Link:
- Brittleness na hinihimok ng Global State at Singletons.
- Dependency Injection para Iwasan ang Singletons.
- Mga Pabrika at Singleton.
Anong singleton ang maganda?
Dapat gumamit ng singleton kapag namamahala ng access sa isang mapagkukunan na ibinabahagi ng buong application, at magiging mapanira ang potensyal na magkaroon ng maraming instance ng parehong klase. Ang pagtiyak na ligtas ang pag-access sa mga shared resources thread ay isang napakagandang halimbawa kung saan maaaring maging mahalaga ang ganitong uri ng pattern.
Masama ba ang singleton sa Swift?
Singletons ay hindi masama sa pangkalahatan, ngunit sa maraming sitwasyon ay may kasama silang mga problema na maiiwasan sa pamamagitan ng paglikha ng mas mahusay na tinukoy na mga ugnayan sa pagitan ng iyong mga bagay at sa pamamagitan ng paggamit ng dependency iniksyon.