Marco Russo

.NET, Business Intelligence e dintorni

Corsi

Miei blog in inglese

Eccezioni o no?

Diatriba sull'uso delle eccezioni tra Miguel de Icaza e Brad Abrams. Ovviamente (basta leggere i miei articoli!) sono a favore delle eccezioni. Alle considerazioni di Brad aggiungo che Miguel sbaglia a considerare la gestione delle eccezioni così costosa. Prima di tutto, è sbagliato vedere un programma pieno di try/catch (mentre dovremmo trovare tante try/finally); inoltre, anche se è vero che usare le eccezioni ha un costo rispetto a non usarle, non è detto che il costo del non-uso delle eccezioni sia migliore: ogni controllo (preventivo sui parametri o successivo sui codici di ritorno) ha un costo, e le eccezioni consentono di ridurre il numero di controlli con un rapporto superiore di 1:1. Attenzione, non voglio dire che l'osservazione di Miguel sia sbagliata: in linea teorica può avere ragione (in particolare quando ragioniamo su API a basso livello), ma se poi qualcuno applica il suo ragionamento a occhi chiusi, senza fare delle considerazioni sul programma specifico che sta realizzando, i risultati sono senz'altro pessimi.