当前位置:首页 > 工具资料

网站制作好后什么是“对用户友好”?

         如何精确的判断一个东西是否对用户友好?我觉得这是一个现在仍然非常模糊的概念,但是程序语言的设计思想,特别是其中的类型理论(type theory)可以比较好的解释它。我们可以把机器和人看作同一个系统:
  1. 这个系统有多个模块,包括机器模块人类模块
  2. 机器模块之间的界面使用通常的程序接口。(在机器的各个模块间,抽象表现为函数或者方法的类型(type),程序的模块(module)定义,操作系统的系统调用(system call),等等。
  3. 人机交互的界面就是机器模块和人类模块之间的接口。
  4. 每个界面必须提供一定的抽象,用于防止使用者得到它不该知道的细节。这个使用者可能是机器模块,也可能是人类模块。
  5. 抽象使得系统具有可扩展性。因为只要界面不变,模块改动之后,它的使用者完全不用修改。

  如何对用户更加友好,是一两句话说不清楚的事情。所以这里只粗略说一下我想到过的要点:

  1. 统一:随时注意,人是一个统一的系统的一部分,而不是什么古怪的神物。基本上可以把人想象成一个程序模块。
  2. 抽象:最大限度的掩盖程序内部的实现,尽量不让人知道他不必要知道的东西。不愿意暴露给其它程序模块的细节,也不要暴露给人。“己所不欲,勿施于人”。
  3. 充要:提供给人充分而必要(不多于)的机制来完成人想完成的任务。
  4. 正交:机制之间应该尽量减少冗余和重叠,保持正交(orthogonal)。
  5. 组合:机制之间应该可以组合(compose),尽量使得干同一件事情只有一种组合。
  6. 理性:并不是所有人想要的功能都是应该有的,他们经常欺骗自己,要搞清楚那些是他们真正需要的功能。
  7. 信道:人的输入输出包括5种感官,虽然通常电脑只与人通过视觉和听觉交互。
  8. 直觉:人是靠直觉和模型(model)思考的,给人的信息不管是符号还是图形,应该容易在人脑中建立起直观的模型,这样人才能高效的操作它们。
  9. 上下文:人脑的“高速缓存”的容量是很小的。试试你能同时想起7个人的名字吗?所以在任一特定时刻,应该只提供与当前被关注对象相关的操作,而不是提供所有情况下的所有操作供人选择。上下文菜单和依据上下文的键盘操作提示,貌似不错的主意。

                                                           

[返回文章列表页]
website design wechat 13660292791