Ju përdorni singletons për të ofruar një shembull globalisht të aksesueshëm dhe të përbashkët të një klase Ky përkufizim nuk është unik për dokumentacionin e Apple. Artikulli i Wikipedia-s që kam lidhur më sipër thotë gjithashtu se "Një zbatim i modelit singleton duhet të sigurojë akses global në atë shembull. "
Pse përdoret tek Swift?
Singleton është një model dizajni krijues, i cili siguron që ekziston vetëm një objekt i llojit të tij dhe ofron një pikë të vetme aksesi në të për çdo kod tjetër. Singleton ka pothuajse të njëjtat pro dhe kundër si variablat globale. Megjithëse janë shumë të dobishëm, ato thyejnë modularitetin e kodit tuaj.
Kur nuk duhet të përdorni një ton teke?
Situata e vetme në të cilën duhet të merrni parasysh një "singleton" është kur të keni më shumë se një shembull të të dhënave tashmë globale do të ishte në të vërtetë një gabim logjik ose aksesi në harduer.
Lidhje të ngjashme:
- Brishtësia e thirrur nga Global State dhe Singletons.
- Injeksion varësie për të shmangur beqarët.
- Fabrika dhe Singletons.
Për çfarë beqare është e mirë?
Një singleton duhet të përdoret kur menaxhohet aksesi në një burim që ndahet nga i gjithë aplikacioni, dhe do të ishte shkatërruese të kishim potencialisht shembuj të shumtë të së njëjtës klasë. Sigurimi që qasja në burimet e përbashkëta të sigurta është një shembull shumë i mirë se ku ky lloj modeli mund të jetë jetësor.
A është Swift i keq i vetëm?
Singletons nuk janë universalisht të këqij, por në shumë situata ato vijnë me një sërë problemesh që mund të shmangen duke krijuar marrëdhënie më të mirëpërcaktuara midis objekteve tuaja dhe duke përdorur varësinë injeksion.