martedì 31 luglio 2007
Google Singleton Detector
Sempre in linea con i buoni principi di design, Google ha rilasciato il suo Google Singleton Detector, un simpatico tool che analizza bytecode Java alla ricerca di singleton (e non solo). Il motivo e' sempre il solito (vedi anche questo post): i singleton sono dannosi, rendono il codice molto difficile da testare e possono nascondere potenziali problemi di design.
martedì 24 luglio 2007
Pragmatic Unit Testing
E' in fase di produzione un'ottimo libro sullo unit testing, previsto in uscita ad Agosto. Nel frattempo e' possibile leggere un eccellente articolo introduttivo allo unit testing, veramente chiaro e conciso. Molto divertente la parte relativa alle piu' frequenti scuse fornite dagli sviluppatori per non fare unit testing (con relative contro-risposte).
"Pragmatic Unit Testing
in C# with NUnit", 2nd Ed.
Andy Hunt and Dave Thomas with Matt Hargett
lunedì 16 luglio 2007
Singletonite, un male curabile
Purtroppo una buona fetta di sviluppatori sembra afflitta da questo male (curabile). Forse il motivo principale e' dovuto al fatto che un singleton e' visto come una comoda variabile globale, sempre disponibile, e che non richiede inizializzazione esplicita.
Tuttavia, non vi e' classe piu' difficile da testare, e che tende ad inquinare l'ambiente di test in modo subdolo e malevolo. Il mio consiglio quindi e': evitare ad ogni costo classi singleton.
Un ottimo approfondimento sul problema lo potete trovare qua: Use your singleton wisely
Tuttavia, non vi e' classe piu' difficile da testare, e che tende ad inquinare l'ambiente di test in modo subdolo e malevolo. Il mio consiglio quindi e': evitare ad ogni costo classi singleton.
Un ottimo approfondimento sul problema lo potete trovare qua: Use your singleton wisely
giovedì 5 luglio 2007
Primo post!
Ecco il primo post del mio nuovo blog. Su cosa scrivero'? Beh, la mia idea e' di mettere pensieri sparsi su argomenti relativi alla programmazione orientata agli oggetti, al design, al C# e soprattutto su unit test ed XP.
Iscriviti a:
Post (Atom)