动态异常消息是一个好主意吗?

时间:2011-02-07 19:46:55

标签: exception-handling verbosity

我正在为一个项目设计一个基础架构,我一直想知道用参数格式化异常消息是不是一个好主意,让它变得动态。

这意味着,一方面,异常消息可能非常详细。

在我看来,更强大的缺点是你不能指望某些消息。这些可以在异常处理中使用(尽管它不是最佳实践),测试消息是这个还是那个以及在日志记录中。但更令人不安的是,如果你打算在某个地方展示这个消息(我会这样做),它会使本地化变得更加困难。

所以我的问题是你对它的看法是什么以及你是否有一个妥协的解决方案,给我两个冗长(如果我记录异常)和一致性。

感谢。

1 个答案:

答案 0 :(得分:0)

我认为在Exceptions中包含参数通常非常有用。想想其他开发人员(以及您自己)将阅读该消息并尝试查找错误。或者更糟糕的是:用户可能会向您阅读异常消息或将其发布在论坛上,您必须远程查找出错的地方。

在异常中测试某些消息确实不是最佳做法。我称之为不好的做法。我知道的所有语言都允许你定义我们自己的Exception类,如果纯类名不够好(通常也是这样),也可以为类添加自定义属性。我相信Exceptions中的消息应尽可能具有人类可读性,并且不需要通过代码来预测它们。

当然你可以做任何事。异常消息不应该因为你想在其中包含所有可能的变量而变得太大/太长。明智地选择; - )。