Jūs izmantojat singletons lai nodrošinātu globāli pieejamu, koplietotu klases gadījumu Šī definīcija nav unikāla Apple dokumentācijā. Vikipēdijas rakstā, kuru es piesaistīju iepriekš, arī teikts, ka "vienkāršā modeļa ieviešanai ir jānodrošina globāla piekļuve šim gadījumam. "
Kāpēc pakalpojumā Swift tiek izmantots vienvārds?
Singleton ir radošs dizaina modelis, kas nodrošina, ka pastāv tikai viens šāda veida objekts, un nodrošina vienu piekļuves punktu jebkuram citam kodam. Singletonam ir gandrīz tādi paši plusi un mīnusi kā globālajiem mainīgajiem. Lai gan tie ir īpaši ērti, tie pārkāpj jūsu koda modularitāti.
Kad nevajadzētu lietot vienu toni?
Vienīgā situācija, kurā jums vajadzētu apsvērt atsevišķu gadījumu, ir tad, ja vairāk nekā viens jau globālu datu gadījums faktiski būtu loģiska vai aparatūras piekļuves kļūda.
Saistītās saites:
- Global State un Singletons atsaucas uz trauslumu.
- Atkarības injekcija, lai izvairītos no vientuļiem.
- Rūpnīcas un Singletons.
Kam vienkrāsains ir piemērots?
Pārvaldot piekļuvi resursam, kas tiek koplietots visai lietojumprogrammai, Jāizmanto viens viengabals, un tas būtu postoši, ja potenciāli būtu vairāki vienas klases gadījumi. Drošas piekļuves koplietojamo resursu pavedienu nodrošināšana ir viens ļoti labs piemērs tam, kad šāda veida shēma var būt ļoti svarīga.
Vai viena sieviete ir slikta Svifta?
Singletons nav vispār slikti, taču daudzās situācijās tiem ir virkne problēmu, no kurām var izvairīties, izveidojot precīzāk definētas attiecības starp objektiem un izmantojot atkarību. injekcija.