- Un primo approccio è quello che una funzione controlli ogni dato che le viene passato come
parametro o come risultato di una chiamata ad un'altra funzione ed ognidato che la funzione
stessa restituisce
- Questo approccio prende il nome di programmazione difensiva
- I controlli possono essere di molti generi, non solo semplici range check (controlli di campo)
- Risulta evidente che questa strategia porta ad un inevitabile doppio controllo degli errori,
da parte di ogni funzione e da parte di chi l'ha chiamata
- Alcuni controlli richiedono poi molto tempo o molte risorse, quindi si decide di tralasciarli
- A volte si decide, per semplificare, di tralasciare alcuni controlli, per evitare di appesantire
troppo la funzione o l'intero programma
- Come risultato, alcuni dati non saranno mai controllati
|