https://www.nngroup.com/articles/ten-usability-heuristics/
by Jakob Nielsen on January 1, 1995
系统状态的可见性:系统应始终在合理的时间通过适当的方式,告知用户正在发生的事情。
系统在现实世界的可参照性:系统应该「讲人话」,遵循人类世界的交流逻辑,而非计算机逻辑与专有名词。
赋予用户自由的控制权:用户会出错,因此需要明确的「紧急出口」协助用户离开当前的状态;支持撤销和重做。
保持一致性与标准:用户不应该对不同文字、操作是否意味着相同的结果而困惑,系统需要有统一的标准。
防止出错:比好的错误信息更好的,是防止错误发生的设计。要么消灭经常会出错的情况,要么增加用户检查确认的步骤。
「识别」优于「回忆」:让详情、动作与选项显性化,而不是让用户自己回忆之前所做的操作,从而减少用户的记忆负担。在适当的时候,甚至可以允许用户进行搜索。
灵活性和使用效率:通过一些新用户不可见的加速设计,让系统可以满足有一定经验的用户与有充分使用经验的用户。允许用户对高频操作定制简化方法。
优美简单的设计:界面中不应包含不相关或极少需要的信息。每项非必要信息都会与必要信息争夺视觉权重。
帮助用户识别、诊断错误,并从错误中恢复:错误信息应以简化的语言表达,准确指出问题,并提供建设性解决方案。
帮助和文档:即使系统设计已经足够简单,用户无需文档即可使用,提供帮助文档仍然是必要的。文档内的信息应搜索友好,聚焦于用户任务,列出具体执行步骤,而不是大而空洞。