在返回错误号时抛出异常(c#)

本文关键字:抛出异常 返回 错误 | 更新日期: 2023-09-27 17:49:43

NEW WAY(异常抛出)和OLD WAY(错误编号)的优缺点。

我总是听老一代的程序员说,返回的错误号更加健壮和可控,而异常抛出在调试期间是很好的。

哪一个是更好的编程实践?

在返回错误号时抛出异常(c#)

异常为您提供了更多的上下文信息,例如堆栈跟踪,这对于在开发过程中诊断问题以及如果您在生产系统中记录异常细节都很有用。

没有理由不同时使用这两种方法。您可以使用错误代码属性定义自己的异常类型,也可以编写包装器从数据集合中提取错误编号。

当你使用exception时,你可以跟踪生成异常的执行路径,因此这非常适合调试,而且现代编程语言也有一些功能(如try/catch块)要操作异常,所有这些都适合调试。

在java或c#中使用错误返回码,其中使用异常是一个选项,将会创建糟糕的代码。

这将混合两种不同的东西,错误处理和正常流。

不要使用返回值来表示错误状态,这在现代编程语言中是不好的做法,糟糕的风格和愚蠢的。

如果有人觉得有必要争论这一点,请通过例子或参考文献来提出,而不仅仅是断言。