月光疾风

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

一、用词晦涩

    术语对于同行业的人来说,有利于他们交流,但是对于外行人来说,却是阻碍了交流。软件开发人员在为非程序员编写软件时要立即停止使用本行业术语。因为各种看似正当的借口,软件里充斥着计算机术语,比如USB、PDF、缓冲区大小、堆栈溢出、下拉菜单等。下图是某下载软件的设置界面:

    

    还有一种情况是程序员把一些众所周知的词定义为特殊含义。比如“记录”这个词,在大家印象中,这是一个动词,可是程序员总是把它定义为数据库中一行一行的数据。

    要避免这个错误,就要找一些用户,请他们描述自己的工作,注意他们使用的动词名词和形容词。然后根据这些制定字典。最后,产品发布之前,一定要找非专业人员仔细测试所有文字,看他们是不是能看懂。

二、在界面中将用户称为user

    这个错误一般存在于英文系统。因为只有两个行业把他们的客户称为user,一个是计算机软件行业,一个是毒品行业。其他行业的客户都不叫做user。我们的客户可以叫做user,但是我们的user的客户,却不一定能再称为user。一般的替代词是member、guest等。这个在中文环境下可能不太常见,因为我们直接把用户称为“用户”,不涉及user这个单词,就算用了,中国用户也不知道user的使用禁忌。

三、无用的错误信息

    有些程序员在向用户显示错误信息时,只是声明发生了错误,却没有告诉用户发生了什么错误,以及如何解决错误。这种错误一般有三个原因:

  • 错误信息由底层代码显示:比如现在比较流行Action-Service-Dao三层结构,很多人把Dao层的异常信息直接向上层抛,最后直接在页面上显示这些错误信息。这种错误比较容易避免,只要对底层错误信息及时进行业务封装就可以。如果这种错误是操作系统的问题,或者是第三方工具的问题,程序员没有办法修改,可能重新启动系统或者悄悄地重新执行一次任务,比给用户错误信息更好一些。
  • 没有向上层代码提供错误原因:虽然有些人对底层错误进行了封装,但是只是说“**发生了错误”,却没有给用户一个可以看懂的原因。
  • 使用通用的错误信息:有时为了减少工作量,开发人员会把所有错误分成几大类,然后为每一类提供一个公共的错误信息。这种做法不能提供足够具体的信息,比如说:“您输入了非法字符”。但是哪些是非法字符,哪些是合法字符,却没有告诉用户。再比如说:“文件不存在或者您没有访问权限”。这是两个不同错误,用户不清楚到底自己遇到了哪一个,而且也不知道这里说的是哪个文件。最夸张的错误信息就是“系统发生了错误”。

    好的错误信息一定要告诉用户发生了什么,为什么会发生这个错误,以及用户该怎么处理。而且,错误信息一定要用和任务相关的词汇,不要把计算机术语给用户看。下面这个图显示的是使用360浏览器访问谷歌时出现错误的页面:

    

posted on 2011-02-15 15:23  月光疾风  阅读(428)  评论(0编辑  收藏  举报