Quando si chiama una funzione in un'applicazione Python, la funzione spesso chiamate funzioni più in basso che ancora una volta chiamare le funzioni più in basso, ecc E 'facile passare unknowlingly un cattivo valore di funzione di primo livello che provoca un guasto più in basso . Naturalmente, i parametri dovrebbero essere controllati e le eccezioni sollevate con messaggi di errore utili. Ma dove dovrebbe essere questo idealmente fatto, e perché?
- Il più in alto possibile (i messaggi di errore sono probabilmente più facili da capire poiché sono più vicini all'utente)
- Per quanto in basso possibile (messaggi di eccezione sono più vicini al punto in cui sarebbe in realtà si verificano gli errori, e le verifiche possono essere più semplice dal momento che probabilmente non dipendono da qualche oscura combinazione di valori di ingresso, ma i messaggi ei nomi delle variabili potrebbero essere così lontano da parte dell'utente che l'unico modo per sapere che cosa effettivamente deve essere cambiato nella chiamata di livello superiore è quello di ispezionare l'origine dall'alto verso il basso)
- Entrambi