我已经发布了很多图书馆。我还没有决定如何命名我的例外情况。 Ruby标准库总是将例外命名为(Exception
或Error
的名词) - 例如
RecordInvalid
等。
如果我编写库,并且大多数都不是与Rails相关的,我应该使用哪种命名约定?我必须承认Rails“缩短名称”对我更有吸引力,因为当发生异常时你已经看到它是异常或某种错误,因为它会弹出日志/调试器/标准错误,
答案 0 :(得分:8)
我是这样做的。
异常的名称是否明确了什么?如果是的话,你就完成了。如果没有,请添加Error
后缀。
所以使用你的例子:
ThreadError
:这里Thread
已经是ruby中的常量,也是异常状态的不良描述符。因此需要一个后缀来表示线程中的一些通用错误。RecordInvalid
:在这种情况下,例外的名称清楚地说明了什么是错的。 RecordInvlaidError
将是多余的。另一种思考方式可能是通用与特定。
ThreadError
:一般错误,一个线程发生了不好的事情,不知道究竟是什么,但它并不好。所以这描述了“线程”中的某种“错误”。RecordInvalid
:具体错误,此记录此处的数据完整性存在特定问题,无法保存。所以“记录”是“无效的”,这就是你需要说的全部。答案 1 :(得分:1)
就个人而言,我在Error
阵营,但只有在它自然的时候。把Error
放到最后会清楚说明这个类是什么,它不是一个普通的对象等等。我觉得Exception
对我的品味有点长,并且缺少后缀太模糊。