Quando usare singleton swift?

Quando usare singleton swift?
Quando usare singleton swift?
Anonim

Usi singleton per fornire un'istanza condivisa e accessibile a livello globale di una classe Questa definizione non è univoca per la documentazione di Apple. L'articolo di Wikipedia che ho collegato sopra afferma anche che "Un'implementazione del modello singleton deve fornire un accesso globale a quell'istanza ".

Perché singleton è usato in Swift?

Singleton è un design pattern creativo, che garantisce che esista un solo oggetto del suo genere e fornisce un unico punto di accesso ad esso per qualsiasi altro codice. Singleton ha quasi gli stessi pro e contro delle variabili globali. Sebbene siano super pratici, rompono la modularità del tuo codice.

Quando non dovresti usare un singleton?

L'unica situazione in cui dovresti considerare un singleton è quando avere più di un'istanza di dati già globali sarebbe effettivamente un errore di accesso logico o hardware.

Link correlati:

  1. La fragilità invocata da Global State e Singletons.
  2. Iniezione di dipendenza per evitare singleton.
  3. Fabbriche e singleton.

A cosa serve il singleton?

Un singleton dovrebbe essere usato quando si gestisce l'accesso a una risorsa condivisa dall'intera applicazione, e sarebbe distruttivo avere potenzialmente più istanze della stessa classe. Garantire che l'accesso alle risorse condivise sia thread-safe è un ottimo esempio di dove questo tipo di pattern può essere vitale.

Il singleton è cattivo?

I singleton non sono universalmente cattivi, ma in molte situazioni presentano una serie di problemi che possono essere evitati creando relazioni più ben definite tra i tuoi oggetti e usando la dipendenza iniezione.