最近我在从另一个开发人员那里接手的应用程序中遇到了一个错误。我调试了一个多小时后我意识到,问题不是产生异常的代码,而是在返回错误数据之前执行的一些代码。如果我深入研究这个问题,我会遇到以下情况:
try {
...
} catch (XYException e){}
如果异常会传播(我所做的更改),我会在几分钟内找到错误的原因,因为堆栈跟踪已将我指出问题所在。那么我如何才能说服其他开发人员永远不要以这种方式捕获和忽略异常?
最佳答案
简单的经验法则:当且仅当您有有效的处理异常的方法时才捕获异常。在您的工作场所做任何您需要做的事情来传播这个简单的规则。
通过使用 PMD 等工具,您甚至可以在所有开发人员的开发环境中强制执行此操作。 EmptyCatchBlock
(基本规则下的第一条规则)是一条完全符合您需要的规则。你还有一些out-of-the-box rules for exceptions如果您需要更好地控制异常处理。
然而,根据我的经验,强制使用 PMD 等工具永远不能替代适当的开发实践和开发人员教育。
关于java - 如何说服其他开发人员不要忽略异常?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2454372/