我总是使用“返回状态代码”方法来管理错误。现在看来,异常是管理错误的最佳方式 但他们真的是最好的方式吗?我读过像exceptions are worst than GoTo
这样的内容您是否知道有关异常和错误管理的一些好文章/帖子/书籍?
答案 0 :(得分:3)
如果你编程面向对象,也许异常对你来说更好。如果编写过程,返回值是更好的方法。这取决于你的编码风格等。
答案 1 :(得分:2)
异常比返回状态/错误代码慢10000倍,具体取决于编程语言。这是由于所有堆栈信息都被跟踪。那太糟糕了。
通常,您不必使用例外。事实上,在某一点上,唯一存在的就是返回代码。
关于异常的好处是他们不会让程序继续,除非他们被正确处理。相反,程序崩溃了。
因此,基本上,如果您忘记处理状态消息或担心其他人可能无法检查您的函数的返回代码,则例外会停止程序并让您修复它。虽然,我已经看到很多没有经验的程序员捕获异常,没有做任何事情,然后继续。这与忽略函数的返回代码基本相同。
关于异常的另一个好处是它们会自动“冒泡”。您不必通过长链函数传递错误代码,而是可以在最顶层设置try catch并适当地处理任何错误(假设您不希望其他任何事情发生)。例如,如果出现任何问题,请显示错误页面。