哈Ha! 我向您介绍乔尔·斯波斯基(Joel Spolsky)撰写的文章
“控制环境使您快乐” 。
关于作者: Joel Spolsky,Trello,Fog Creek Software的共同所有者,Stack Overflow负责人大多数C ++开发人员都讨厌用户界面编程。 这是令人惊讶的,因为我发现UI编程非常简单,直接和有趣。
简单 ,因为此处最复杂的算法是将一个矩形放置在另一个矩形中。
可以理解 ,因为您会立即看到门框并可以对其进行修复。 之所以
令人着迷,是因为您似乎正在观察工作的过程和结果。
我认为开发人员因为担心UI设计而担心UI编程。 在他们的理解中,UI设计类似于图形设计,这是一个神秘的过程,仅适用于具有奇怪穿孔的富有创造力的“全黑外观”人,这些人会吸收拿铁并创造出令人赏心悦目的东西。 另一方面,程序员将自己视为逻辑分析师:他们善于推理,在工作中为零。 因此,我们确定接口的设计不适用于它们。
我发现UI设计既结构化又简单。 要掌握它,没有必要获得艺术学院的文凭并将头发染成酸性粉红色。 有一种不太麻烦的方法:应用几个简单的规则并改善您正在处理的程序的界面。
我不会发布Zen和UI设计的艺术。 它与艺术或佛教无关,它是程序员的一套合理规则。 我想您不需要有关如何创建菜单栏的说明:相反,您可以考虑要放入菜单中的内容以及是否需要这样做。 因此,我将教您一个简单易懂但重要的良好用户界面原理。
在我青年时期,我在一家工业面包店工作。 面包房包含六个生产传送带。 每隔一台输送机,就有一个搅拌机,该搅拌机生产出重达180公斤的面团,然后向右或向左倾倒:
因此被构思出来。 实际上,缺少了一些东西,位置看起来像这样:
细心的读者会很生气:“面团是如何从第二个搅拌机到达第六个输送机的?” 轮到小乔尔了。 很难相信,但是所有的工作就是我必须站在第二个搅拌机的左边,在推车上抓住一块巨大的块,将其运送到第六个传送带上,然后使用类似于绞盘的设备将面团放在上面。
从晚上十点到早上四点,我每十分钟执行一次。 但是还有其他困难。 第六台输送机无法承受180公斤的重量,我不得不用一把大刀将面团分成十个部分。 我不想详细说明它有多愚蠢。
起初我做得很糟糕。 这项工作似乎根本不可能。 我身体的每根骨头都疼痛不堪,水泡坐在水泡上。 我不怀疑有病的地方。 起初,我没有设法向传送带供应面团。 生产线上的缝隙引起了不断的中断:带有缝隙的面团掉进烤箱,面包由于体积变小而消耗了恒定的能量而烧坏了。
有时,输送机堵塞并停止运转,但搅拌机继续正常工作。 问题是手推车可能空间不足。 发生这种情况时,我被迫清洗地板,用油润滑,倾倒面团,以便以后收集。 这不是最好的出路,因为30分钟后面团开始发酵,好的面包也不再起作用。 然后,我不得不将其切成5公斤的小块,然后在每个新批次中添加一份。
但是一周之后,我开始做得很好:“测试周期”中每10分钟休息2分钟。 我制定了准确的时间表,并了解了发生管道故障时如何暂停搅拌机。 然后我想知道为什么,正如啤酒广告所说,有些日子比其他日子好。
有一次我注意到其中一辆手推车的车轮坏了。 有时候她朝错误的方向走,摧毁了她前进道路上的一切,这让我有些生气。 有点气,然后,我拉起绞车的链条,划伤了一小块金属。 当我用空车跑去抓面团并滑上喷洒的油时,这很烦人。
但是也有一些小的胜利。 我计划了制作面团的时间,以便可以在上一个面团结束前几秒钟准备好新鲜面团。 新鲜的面包制成优质的面包。 一些胜利的意义甚至不那么重要:我注意到搅拌机上飞出一小撮面团,用抹子将其刮下,然后将其装在我的后兜里,扔掉。 哦,是的! 有时结果是将面团切成薄片。 在这样的时刻,即使在很小的事情上,我也设法控制了局势。
所以我的日子过去了。 一堆小失败加上一堆小胜利。 我总共得到了什么? 即使轻微的不适也会影响情绪。 在情感方面,质量远比范围重要。 我注意到最快乐的日子伴随着许多小胜利和几次小失败。
多年后,在大学里,我研究了马丁·塞利格曼(Martin Seligman)习得性无助的重要心理学理论。 这一理论以多年的研究为依托,告诉我们,当您无法控制局势时,抑郁症就来自无助感。 您越能控制情况,您就会获得更多。 如果一切都失去控制,您会生气并发疯:键盘上的空格已断开,并且在键入时,单词会粘在一起。 这很烦人,因为您单击了空格键,但是什么也没有发生。 前门的钥匙并不总是打开锁。 旋转时卡住。 总之,所有这些小事情每天都在困扰着我们。 尽管与非洲的饥荒相比,它们看上去像什么都没有。 但是我最担心的是愚蠢的差距!
好吧,让我们回到计算机上。 我建议创建一个典型的Windows用户Pete。 这有助于在创建界面时牢记图像。 虚拟用户越现实,就越容易想象他将如何使用该产品。 皮特(Pete)在一家技术出版公司担任会计,并且已经使用Windows进行工作和家庭使用了六年。 他是精通技术的人。 皮特安装了自己的软件:读计算机杂志,甚至编写简单的Word宏程序,使秘书更容易发送发票。 他家里有电缆调制解调器。 皮特(Pete)从未使用过Macintosh:这对他来说很昂贵。 “对于拥有700 MHz和128 MB RAM的PC来说,它已经死了..”-好的,Pete,我们了解您。
有一天,皮特的朋友吉娜(Gina)让我帮她买电脑。 吉娜(Gina)拥有Macintosh iBook,她只喜欢半透明的“盒子”。 皮特讨厌这些事情,所以当他坐在电脑旁时,他就生气了。 最后,他帮助了女友,但仍然非常不高兴:“ Macintosh有一个荒谬的用户界面。” 可笑吗 他在说什么 每个人都知道Mac具有优美的界面,整个窍门是易于使用。
这是我对这个谜语的分析。 如果要将窗口拖到Mac上,只需将其拉到任意边缘即可。 在Windows上,标题栏用于移动,如果您拖动角落,则窗口将改变形状。 皮特(Pete)运用这一原理,试图扩大Mac Gina的窗口,但它确实在移动。 在Windows上弹出一个消息框时,按Enter或空格键将其关闭。 在Mac OS上,空格键将不起作用,您必须单击鼠标。 收到通知后,Pete不习惯按空格键将其删除。 在过去六年中一直有效,但这次却没有。 在没有意识到这一点的情况下,皮特开始锤打钥匙。 他确信Mac根本没有注册点击。 最后,他使用了鼠标,但变得紧张起来。
皮特过去常使用Alt + F4组合键关闭Windows窗口。 在Mac上,它们会更改音量。 有时,Pete想单击Internet Explorer图标,该图标被另一个窗口覆盖。 他按住Alt + F4关闭窗口,然后双击所需的图标。 好吧,此后他不得不关闭两个窗口:操作的方式有所不同。
看起来有些琐事,但是他们设法破坏了皮特的夜晚。 这个家伙试图控制一切,但是什么也没得到。 空格键和Alt + F4键“无效”,但在我们看来,这更像是一种故障。 顽皮的窗户似乎取笑了皮特,而不是扩大了自己。 窗户不好。 甚至这种潜意识,微妙的无法控制的感觉也变成了无助,这也变成了不幸。 “我爱我的电脑,”皮特说。 -Windows以我喜欢的方式工作。 在这些罂粟花上是如此困难和不便。 一些障碍。 如果苹果这些年来一直在开发操作系统,而不是修补牛顿,那不会有这种困惑。”
皮特,我们非常了解您。 但是,尽管您有这种感觉,但是Macintosh使用起来非常方便。 例如,对于Mac用户。 微软程序员原本应该复制Mac界面,但认为他们正在添加一项很酷的新功能,允许您通过拉伸任何边缘来调整窗口大小。 Mac OS 8.0程序员可能认为使用边缘移动窗口会很方便。 用户界面上的大多数战争都集中在错误的事情上。 Windows更好,因为方便调整窗口大小? 没关系 诀窍在于界面应符合用户期望。 如果不是这种情况,用户将感到无助。 像我一样,当手推车的车轮转向错误的方向时,我撞到了墙上。 你这家伙!
用户界面很重要,因为它会影响用户的感觉,情绪和心情。 如果UI不好,那么人们将无法控制所执行的操作,他们会很烦恼,但开发人员应对此负责。 如果界面能够正常工作,那么用户将很高兴,因为他们已经实现了自己的小目标。 万岁! 奏效了! 很棒的软件! oo!
使人们高兴就是让他们控制局势。 为此,您需要正确解释其动作。 因此,UI设计的主要规则是:
“良好的用户界面表现完全符合预期”
正如吉格尔所说:“其他一切都只是评论。” UI设计的其余规则只是后果。
资料来源:
控制环境使您快乐翻译:cinnamongirl