Junior — Middle
Cos'è il pattern Singleton e quali sono i suoi vantaggi e svantaggi da considerare?
sobes.tech AI
Risposta dell'AI
Il pattern Singleton garantisce che una classe abbia una sola istanza e fornisce un punto di accesso globale a questa istanza.
Vantaggi:
- Controllo sulla creazione dell'unico oggetto.
- Comodità di accesso a risorse o configurazioni condivise.
Svantaggi:
- Può causare problemi di test a causa dello stato globale.
- Violazione dei principi di inversione delle dipendenze e può complicare la manutenzione.
- In ambienti multithread, richiede sincronizzazione aggiuntiva.
Esempio in Swift per iOS:
class Singleton {
static let shared = Singleton()
private init() { }
func doSomething() {
print("Esecuzione di un'azione")
}
}
// Uso
Singleton.shared.doSomething()