每个开发人员应该知道哪些关键的UI设计技巧?
虽然开发人员有许多UI资源(例如,Joel Spolsky的User Interface Design for Programmers),但我对更多的子弹列表感兴趣,可以在1到2页内进行通信。
我对更具战术性的日常用户界面提示感兴趣,而不是在UI设计会议中涵盖的总体用户界面设计目标(可能至少由一个人参加)具有良好的UI感觉)。这些提示的集合可能涵盖了日常程序员遇到的大约80%的案例。
答案 0 :(得分:31)
当然,所有这些规则都可以被打破。但只有在你出于合理的理由打破它时才能打破它。
请记住,该软件可以帮助用户,它应该是他们想要的,而不是让他们做 想要的。
答案 1 :(得分:11)
当您即将执行将更改或删除信息的操作时,请不要问'您确定' - 用户将学习如何在操作中单击该按钮。尝试在系统设计中允许“撤消”。
答案 2 :(得分:8)
将默认选项设为用户最满意的选项。
答案 3 :(得分:7)
始终为用户提供“出路”,不需要使用后退按钮。
最好的例子:
如果发生错误,请将它们链接回原来的位置(或者至少可以重新开始)。
答案 4 :(得分:6)
尽可能使用工具提示。令人惊讶的是,这些小家伙可以为最终用户添加大量帮助,而且他们对应用程序本身并不显眼。
答案 5 :(得分:4)
设计用户界面时尽量简单,但不能简单。
答案 6 :(得分:4)
答案 7 :(得分:4)
必须使用正确的制表符。
答案 8 :(得分:4)
我认为这个链接将是一个很好的起点,来自微软的“Windows Vista用户体验指南” http://msdn.microsoft.com/en-us/library/aa511328.aspx
这可能非常接近您正在寻找的两页子弹点列表:“Top Violations”:
http://msdn.microsoft.com/en-us/library/aa511331.aspx
非常实用的提示如下:“设置最小窗口大小,如果大小低于该大小,内容将不再可用。”
答案 9 :(得分:3)
不要以基本清晰度和可用性为代价来增加“可发现性”。
答案 10 :(得分:3)
找到用户最常做的事情,然后将其作为最简单的事情。
例如:我对微波设计抱有长期的个人抱怨。
许多人要求你设置一个在使用微波炉之前从未用过任何东西的时钟,并且忘记每次失去电源和需要在那些难以使用的按钮板上按10次按键这样做。
简单的可用性测试将实现微波炉上最常用的烹饪时间是标准的“分钟”和倍数。因此,理想的微波应该能够以3次或更少的动作在高功率下烹饪产品1分钟。
对于一分钟以外的时间,但是在黄金“1”分钟的5分钟内,应该稍微多一些步骤,但不是很明显,并且烹饪时间仅需要大量的动作> 5分钟。 (这是相当罕见的)
温度刻度盘是模拟的,并且在之前的设置中保持不变,具有不同的滑动范围。
时间刻度盘是数字的,但模拟模拟,顺时针转动拨盘会增加时钟时间(通过表盘下方的照明顺序显示)。逆时针转动拨盘可减少时钟时间。烹饪减少了时间。
门被关闭,时间正在开始烹饪。门打开暂停烹饪。
标准操作:打开门,加载,转动时间拨盘,关闭门(或者可选地,首先关闭门,并且只要> 1s在时钟上就开始烹饪)
没有选择时间的开始按钮在高功率下开始烹饪1分钟。
烹饪时启动按钮增加1分钟。
时间段在会话之间保持不变。转动拨盘会使存储在转盘位置的时间被复制到数字定时器。
开始烹饪前按“电源”
烹饪时按下电源会动态降低功率。
标准操作: 1分钟高=按开始。
1分钟中高=按开始,按下电源。
2分钟高=按开始两次。
<随时>在高=转动拨号直到开心,按开始。
<随时> on< anypower>转动拨号直到开心,按下电源直到开心,按开始。
<先前选择的时间> on high =按电源,按开始
<先前选择的时间+ 1分钟>在高=按电源时,按两次启动。
正如您在此处所看到的,添加少量额外按钮,可以添加很大程度的表现力和功能设计。
任何带有数字键盘的时间规格设计往往都不符合我的良好设计标准。
它指出,这些设计可能会对某些人有更高的学习曲线,但一旦学会了,肌肉记忆就会让它本能。与更多(显而易见的?)但过于复杂的设计相反,即使是学习用户也会不断花费大量时间执行繁琐的任意操作,只需达到共同的目标。
答案 11 :(得分:2)
执行一些hallway usability testing(与您进行代码审核的方式相同)。
即便是一个非常快速的“嘿!试试这个”可用性测试(如果你可以称之为那个)与你旁边的人会产生很大的不同。最重要的是让别人尝试你刚刚构建的UI。
令人惊讶的是,其他人多次使用您的新用户界面卡住了,只需几分钟(通常)就可以找到最大的问题。
答案 12 :(得分:0)
如果您使用编辑器中的弹出窗口,请确保将插入点或状态返回到弹出窗口之前的状态。太多的程序只会让你“挂”并不得不找回自己的路。
答案 13 :(得分:0)
而不是任意的“确定”和“取消”按钮,在给定的上下文中,它们可能不明确,而用户盲目地点击一个按钮,按钮应该包含他们所做事情的简要描述。
[Ok, Please Cancel my subscription ], [ Please do not cancel my subscription ]
远胜于
Cancel my subscription?
[ OK ] [ Cancel ]
(这些失败经常出现在dailywtf上)
答案 14 :(得分:0)
人们......随意刷新以上任何一点,并提供有效理由!!!
答案 15 :(得分:0)
这是我对概念性问题的术语,“你的奶奶,除了电子邮件和检查www.cutecats.com之外从未使用过计算机,是否可以使用它?”(假设她拥有使用该特定应用程序的真实知识) )”。
一切都应该是显而易见的;什么都不应该是带有副作用的黑匣子魔法。应该以用户以前使用的通用格式访问不常见的内容。
清除标签,清除帮助文件的路线,清除具有明显效果的操作。
如果奶奶无法使用您的Paint程序,您需要真正考虑您的UI。
答案 16 :(得分:0)
我的UI设计基本规则是让每个“页面”只执行一项任务和一项任务。它使页面简单,保持设计清洁,使应用程序更容易理解。
这种类型的设计称为电感用户界面。这是微软在2001年就该主题提出的document。文字可能有点过时,但原则通常都很好。唯一需要注意的是,在这样的设计中可以找到平衡点。如果过度简化过多的用户将不得不在所有地方进行导航以完成简单的任务,并且可理解性的提高将因生产力不足而丢失。
答案 17 :(得分:0)
每日user interface web design和应用程序设计的一些简单提示:
答案 18 :(得分:0)
我喜欢遵循这些指导原则: