Ciao a tutti.
Uso regolarmente la OOP, ma per migliorarne l'utilizzo vorrei porvi delle domande:
1) Fare uso dei metodi statici è una buona norma? Quali sono gli svantaggi?
2) Le classi create per istanze singleton permettono dei vantaggi che possono essere quantificati in quale maniera?
3) Mi capita di creare delle classi nelle quali il costruttore setta immediatamente gli attributi della classe in base ai parametri passati (ad esempio la mia classe userinfo dato l'id riempie gli attributi come 'nome', 'cognome'...io serializzo l'istanza nella sessione e poi usando i metodi della classe stessa recupero gli attributi. altro esempio è la classe che gestisce le immagini che dato l'id permette di fare una serie di cose specifiche per quell'id lavorando sugli attributi della classe stessa che rimangono però specifici per quell'id). Ovviamente in questo caso non si possono condividere le risorse, ma perché è dipeso da una MIA scelta progettuale! Nella classe Immagini avrei potuto tranquillamente non passare l'id al costruttore e farlo invece all'interno di ciascun metodo.
Ora, visto che la mia scelta progettuale a volte è dettata dall'istinto, vorrei sapere e capire quando le classi vanno create per istanze singleton e quando invece non vanno create per questo scopo. Nel caso della mia userinfo è evidente che portando in giro nella sessione l'istanza specifica la singleton sarebbe insensata, ma nel caso della classe per immagini, quale dovrebbe essere il ragionamento?
Io penso che negli script in cui i metodi della classe vengono richiamati in maniera intensiva è bene recuperare subito tutte le informazioni necessarie e salvarle negli attributi, in modo tale da ridurre le richeste al db, o sbaglio?
Spero di essermi spiegato.
Grazie e ciao.