JavaRush /Java Blog /Random-IT /Perché è necessario Singleton?
KarmaHacker
Livello 30
Новосибирск

Perché è necessario Singleton?

Pubblicato nel gruppo Random-IT
Attualmente sto risolvendo un grosso problema al livello 27. Lì ci viene chiesto di creare una classe StatisticManager e renderla un singleton. Ok nessun problema! Successivamente, in altre classi del programma devo chiamare i metodi di StatistcManager, e qui inizio a incontrare piccoli momenti fastidiosi, devo scrivere una variabile di riferimento StatisticManager statisticManager = StatisticManager.getInstance(); statisticManager.method(); o così: StatisticManager.getInstance().method(); Sono un sacco di lettere in più! Sarebbe molto più semplice rendere la classe statica e scriverla in questo modo: StatisticManager.method(); penso che forse un singleton abbia qualcosa da guadagnare rispetto a una classe statica? Ho letto un articolo su Habré e non fa che rafforzare i miei dubbi. Singleton, almeno in questo compito, è ridondante. Finora, vedo un solo utilizzo per un singleton: se dobbiamo risparmiare risorse e creare un oggetto non immediatamente, ma qualche tempo dopo, quando ne abbiamo bisogno. In altri casi, una classe statica va bene. Su Habré scrivono anche qualcosa sull'eredità, ma riesco a malapena a immaginare una situazione del genere, e probabilmente nemmeno molto spesso. Se sbaglio, correggimi per favore. Voglio solo capire meglio i principi di progettazione e forse questo aiuterà qualcun altro a capirlo :)
Commenti
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION