错误信息的文本最佳做法
-
02-07-2019 - |
题
我们正在改变某些文本用于我们老了,写得很差的错误消息。什么是一些资源用于最佳做法,编写好的错误信息(专门为Windows XP/Vista)。
解决方案
在条款的措辞错误消息,我建议参照以下的风格指南适用于Windows的应用:
- Windows用户体验指南, 和具体部分错误信息 在这里,.
- Microsoft手册的风格
其他提示
最佳的最佳做法是防止用户首先导致错误。
不要告诉用户他们不关心的事情;错误代码5064并不代表任何人的事情。不要告诉他们他们做错了什么;首先不允许它。不要责怪他们,特别是不要因为你的软件犯了错误。最重要的是,当出现问题时,告诉他们如何修复它以便他们继续前进并完成一些工作。
一个良好的错误信息应:
- 是不显眼的(没有蓝色的-屏幕上或黄色的-屏幕上的死亡)
- 得到用户的方向正确的问题(在他们自己的如果可能的,或者谁联系对于帮助)
- 隐藏无用的,深奥的程序员的废话(不说,"null参考的例外发生在45行")
- 是描述性的,而不会被冗长。只是足够的信息,告知用户他们所需要知道而已。
有一件事我一开始要做的是产生一个独特的编号显示在的错误消息,并写入记录文件,因此我可以找到错误的记录时的用户发送我的截图或打电话说,"我有一个错误。它说我的参考数是0988-7634"
出于安全原因,请勿提供用户不需要的内部系统信息 琐碎的例子:当登录失败时,不要告诉用户用户名是错误还是密码错误;这只会帮助攻击者暴力破解系统。相反,只需说“用户名/密码组合无效”即或类似的东西。
始终包含纠正错误的建议。
尝试找出一种编写软件的方法,以便纠正它们的问题。
对于任何用户输入(字符串,文件名,值等),始终显示错误值及其周围的分隔符(引号,括号等)。 e.g。
找不到您输入的文件名:“somefile.txt”
这有助于显示可能已经潜入的任何空格/回车,并大大减少故障排除和挫败感。
- 避免来自不同地方的相同错误消息;如果可能,使用file:line进行参数化,或者使用其他上下文,让开发人员可以唯一地识别错误发生的位置。
- 设计机制以便于本地化,特别是如果它是商业产品。
- 如果错误消息是用户可见的,请将它们作为完整的,有意义的句子,不要对代码有深入的了解;记住,你总是太接近问题 - 用户不是。如果可能,请向用户提供有关如何继续,联系人等的指导。
- 如果可能,每个错误都应该有一条消息;如果没有,那么请尝试确保所有错误展开路径最终都会出现错误消息,从而揭示发生的事情。
我相信这里会有其他好的答案......
醇>
实际上可以读取更短的消息。
错误消息越长,用户读取的内容就越少。话虽如此,尝试重构代码,以便在有明显响应的情况下消除异常。尽量只根据用户或代码控制之外的事情发生异常。
最好的异常消息是您永远不必显示的消息。
错误处理始终优于错误报告,但由于您正在改进错误消息,而不一定是代码,这里有一些建议:
用户需要解决方案,而不是问题。帮助他们知道错误后要做什么,即使消息像“请关闭当前窗口并重试您的操作”一样简单。
我也是集中记录错误的忠实粉丝。确保日志是人类和计算机可扫描的。用户并不总是让您知道他们遇到了什么问题,特别是如果他们可以“解决”,所以日志可以帮助您了解需要修复的内容。
如果你可以轻松地控制错误对话框,那么显示一个带有“详细信息”按钮的漂亮可读信息的对话框可以显示错误编号,跟踪等,这对于解决实时问题非常有帮助。好。
支持多语言适用于所有类型的消息,但在出现错误消息时往往会被遗忘。
我不会告诉用户无用的深奥信息,如数字错误代码。我会遵循这一点,但要明确记录这些信息,以便让技术娴熟的人进行故障排除。