当引入新的异常类型时,我总是不确定如何正确执行此操作。有一个共同的约定吗?你怎么做呢?你如何命名和组织你的例外?
我感兴趣的范围,你组织他们(让他们在他们的?使用的单位有一个单元组件级别?包级别?应用程序?)
这也影响了命名。你包含多少上下文?让它们非常具体(比如EPersonIDNotFoundError)还是试图让它们可重用(比如ENotFoundError)更好?
那么后缀“错误” - 什么时候应该添加它,什么时候离开它?我看不到逻辑例如在Classes.pas
:
EWriteError = class(EFilerError);
EClassNotFound = class(EFilerError);
EResNotFound = class(Exception);
我认为按严重程度和每个包来组织异常是很好的做法。按严重程度例如。从数据加载/保存错误中分离验证异常。例外情况可以包含更多关于发生情况的具体细节。 – too
这不是一个问题......一次出现太多问题,有一些潜在的争议(拖延?)。恕我直言,这不适合SO目的。 –
@Arnaud好吧,让我试着回答这个问题。因为我非常欣赏这个输入。 –