I like seeing which parts of my program can fail, and I want to be forced to consider what should happen in different failure scenarios.
I like explicit error handling because not only is it obvious where my program can fail (and why), but it is obvious where it can't fail too.
With exceptions, any line of code may fail. Or maybe not. It is all invisible.
(Now this assumes a language that enforces return code checking; I use C and a static analysis pass today, but a few languages get this built-in).
I like seeing which parts of my program can fail, and I want to be forced to consider what should happen in different failure scenarios.
I like explicit error handling because not only is it obvious where my program can fail (and why), but it is obvious where it can't fail too.
With exceptions, any line of code may fail. Or maybe not. It is all invisible.
(Now this assumes a language that enforces return code checking; I use C and a static analysis pass today, but a few languages get this built-in).