Jeff Atwood质疑iPhone的单键设计
我喜欢使用iPhone,但我对它的一个设计不敢苟同:苹果始终坚持,设备的正面永远只能有一个按键。
我还买了一个Kindle Fire,它更离谱,一个按键都没有!我完全赞成,任何小器具的正面都应该在明显的位置上至少有一个“耶稣把手”一样的按键。让我好奇的是:为什么亚马逊决定不为Kindle Fire设计任何按键,而其他型号的Kindle设备都有一个“Home”键?亚马逊常把设备的第一代产品做得比较粗糙,这是有前科的。我相信他们会在后续的1~2代之内把“Home”键加回来。不过,这东西才卖199美元,我愿意为他们的疏忽买单。至少在眼下,总体上来说我对它还是认可的。
“耶稣把手”的英文是“Jesus Handle”,原指汽车车窗上方的把手,一般是在车速很快或道路颠簸的时候供乘客抓取以保持平衡的,看起来像在祈求耶稣的保佑,因此得名。口语中也常称作为“oh shit handle”,因为人们在这种情况下常常会脱口骂出“oh
shit!”——译者注
甚至苹果也做过没有任何按键的设备,比如第3代的iPod Shuffle。你必须在耳机上双击或连按3次才能完成像跳到下一首歌这样基本的功能。顺便说一下,这也意味着你的老耳机都没用了,至少跟这款iPod是不兼容的。还好,第4代的iPod Shuffle迅速纠正了这个错误,物理按键重新回归到了设备上。第5代设备采用了触摸控制——这是意料之中的。
微软也好不到哪里去!Xbox 360的无线麦克风有时让我纠结不已。(要不然,这玩意儿就太棒了!)它只有一个电源开关和一些指示灯。
应该承认,这款麦克风的大部分功能都挺好用的,拿起来就可以唱(尽管我五音不全)。但是我也得承认,每次让它与Xbox同步的时候,我都有点不知所措,它让我很费解……微软发布了一篇在线说明文档:“How to set up and use your Xbox 360 Wireless Microphone”(如何设置并使用Xbox 360无线耳机)。你去看看,这能怪我吗?
当你打开麦克风时,内置的指示灯会闪烁,以表示麦克风当前的状态,如下:
· 电源接通:绿灯闪烁,频率为每秒一次;
次;
· 连接完成:蓝灯闪烁,然后停止。
当电池电量不足时,内置的指示灯会闪烁,以表示电池充电的状态,如下:
秒一次;
· 电量临界点:琥珀色的灯闪烁,频率为每秒一次;
当你的麦克风超出了Xbox能够接收到无线信号的范围,绿灯会每秒闪一次。如果有些游戏支持的话,这些指示灯还能一起变换颜色。
如果我们都能赞成“没有任何按键是一个糟糕的设计”,我觉得“单键设计是有问题的”也便顺理成章了。我在使用iPhone的单键时碰到了麻烦,就像使用苹果的单键鼠标一样——可能在一开始觉得还行,但久而久之,就会造成功能的“过载”,甚至达到荒诞可笑的地步。让我们来看一看Andrew Durdin为iPhone的“Home”键画的功能示意图——单单一个按键要控制多少东西啊!
iPhone只有一个“Home”键。哇,太方便了!你可以这么用它:
- 单击;
- 双击;
- 连按三次;
- 单击并按住;
- 单击,等一下,再单击。
当然,所有这些操作在不同的场景下都有不同的功能。值得一提的是,我特别喜欢通过双击调出活跃应用的列表,但我常常误操作,结果却进入了主页面。我在iPhone上装了非常非常多的应用,以致于我不得不通过搜索来导航。也就是说,我很依赖搜索,但为了调出搜索页面,我必须先单击进入默认的主页面,等一下,再单击。有时候我按的时间太长了,被系统识别为“单击并按住”操作,结果调出了语音搜索服务……我对它可一点都不感冒!
本文写成于2012年2月。时至今日,苹果公司已经在iOS
7里改进了调出搜索框的操作方式。——译者注
我现在都害怕使用iPhone的“Home”键了,因为它“让我思考”。我很多时候都在误操作。事情本不应该是这样的!
读到这,你可能想我会“弃暗投明”,转投WindowsPhone或Android的阵营,并且直指它们的高明之处。我不敢肯定它们是否真的高明。事实上,它们都有自家难念的经。
如果设备只有一个按键,那个按键应该发挥什么作用最起码还是清楚的,是吧?也许吧!但也未必……(请回过去再看一眼iPhone的“Home”键的功能示意图。)
但有一点我是认可的:像网络浏览器一样,Android和WindowsPhone上都明显地标出了“后退”键。我很多时候都拿iPhone来上网。互联网之所以强大,主要还是因为它的简单易用:内容陈列得清清楚楚供用户点击,还有一个大大的像汽车喇叭一样的“回退”按钮,很明显地摆在那里,让你深入通幽曲径也永不迷失;一切都是那么有条理。没错,浏览器也有一个“Home”按钮,但最新版的Chrome,Firefox和IE无一例外地把它边缘化了,转而极大地突出了“后退”按钮。尽管我尚且认为,不是所有的手机应用都应该迎合互联网的行为方式,但互联网正越来越变成为一个善意的应用平台。“后退”按钮是一种用户界面范式,它对Web应用发挥着“清道夫”的作用。我强烈支持把它做成设备的一个硬键。
然而,一旦设备上有3个按键时,人们就又开始踌躇了。我按的键对吗?出现这种情况就不妙了。我甚至都不知道Android手机上那第3个按键是干嘛用的!我猜,我可能会喜欢用Windows Phone上的搜索键,但在增加一个新的按键之前,我更希望看到设备正面的两个按键能够得到协调、一致的使用。举例来说,如今的双键鼠标差不多已经成为行业标准了,我想它背后肯定是有原因的。(没错,有些鼠标还有一个“讨厌”的中键,但那不是必需的,有了它只是锦上添花而已。)
接下来,怎么解决单指操作的问题呢?其实,即使在触控设备上,一个手指似乎也是不够用的。久而久之,用户体验方面必然会出现古怪的“过载”:
个手指,你可以切换到别的应用——应用程序的设计师必须规避这些操作,以确保自己应用的合法输入方法不会跟系统级的手势“打架”。
使用这个功能之前,需要将“设置 |通用 |多任务手势”选项打开。——译者注
还有更糟糕的:手指从屏幕顶部向下滑动,这个操作可以打开“通知中心”——一个含有日历约会、天气等信息的窗口。单指的垂直运动很常用,很多应用都期望获取这样的输入。《Flight Control》和《Fruit Ninja》(水果忍者)就是两个典型的例子。在玩游戏的时候一不小心打开“通知中心”,这种事时有发生。垂直方向上的滑动在任何画图程序里也是很常见的。应用设计师需要倍加小心、允许这些控制吗?很显然,必须的。
现如今,“过载”在触控的场景里已经无处不在了。除非你只是拿一个平板作最简单的用途,否则你将免不了要“双击”、“单击并按住”、“双指滑动”等等。
苹果在追求简单和简洁设计方面做得极其出色,但我也常常想,他们做过头了,特别是在一开始的时候。比如,第一台Mac机居然没有光标键。所有的问题都是设计问题,听起来有点主观,但就像“金发姑娘”一样,我将坚持:奥秘之处在于让“汤”不要太凉(没有任何按键),也不要太烫(3个或更多的按键),而要刚刚好。如果我在按下“Home”键的时候对其后果无须思考太多,我肯定会更喜欢用iPhone的。(要知道,那个键每天都会被按上百次哦……)
“金发姑娘”出自一则童话故事《金发姑娘和三只熊》。——译者注
Jeff Atwood质疑iPhone的单键设计的更多相关文章
- 转:Jeff Atwood倾情推荐——程序员必读之书
Jeff Atwood倾情推荐——程序员必读之书 英文版:<Code Complete 2>中文版:<代码大全(第二版)>作者:Steve McConnell译者:金戈 汤凌 ...
- 精美的 ( Android, iPhone, iPad ) 手机界面设计素材和线框图设计工具
在制作界面原型的时候,如果有现成的界面基础元素可以使用的话,设计师就可以非常快速的完成原型的制作,能够节省大量的时间和精力.在这篇文章, 我向大家分享45套非常有用的 UI 和 Wireframe 套 ...
- Jeff Atwood倾情推荐——程序员必读之书
英文版:<Code Complete 2>中文版:<代码大全(第二版)>作者:Steve McConnell译者:金戈 汤凌 陈硕 张菲出版社:电子工业出版社出版日期:2 ...
- MySQL主键设计
[TOC] 在项目过程中遇到一个看似极为基础的问题,但是在深入思考后还是引出了不少问题,觉得有必要把这一学习过程进行记录. MySQL主键设计原则 MySQL主键应当是对用户没有意义的. MySQL主 ...
- 使用复合索引代替单键索引,来避免单键有null值的情况
查看原表: SQL> select count(*) from t1; COUNT(*) ---------- 3229088 SQL> select count(*) from t1 w ...
- php : 单例设计演示
单例 : 保证只有一个实例 <?php /* * 单例设计 */ // 单例: 只能"创造"出它的一个对象实例 class Single{ // 第一步: 私有化构造方法 p ...
- UI创意求助:手机贪吃蛇游戏方向控制键设计
继上一片博文<做梦想起来的C#简单实现贪吃蛇程序(LinQ + Entity)>之后,尝试做一个手机版本,大部分的功能都已经实现了.但在贪吃蛇的方向控制设计上一直不太满意.由于手机界面的大 ...
- MySQL数据库主键设计原则
目录 1. 主键定义... 5 2. 主键设计原则... 5 2.1 确保主键的无意义性... 5 2.2 采用整型主键... 5 2.3 减少主键的变动... 5 2.4 避免重复使用主键... 6 ...
- verilog实现的16位CPU单周期设计
verilog实现的16位CPU单周期设计 这个工程完成了16位CPU的单周期设计,模块化设计,包含对于关键指令的仿真与设计,有包含必要的分析说明. 单周期CPU结构图 单周期CPU设计真值表与结构图 ...
随机推荐
- 离线合成联想到的--canvas合成水印
前段时间做了功能模块:用户设置自定义勋章: 实现方式:前端把用户设置的昵称传到后台,后台根据不同用户等级,使用离线合成技术合成不同的勋章返回到前端: 方案算是实现了,但是有点坑就是,后台的离线合成没有 ...
- electron-vue 初体验
注意事项 首先确保node和npm是最新版本 避免使用镜像(我淘宝镜像安装有报错现象) 避免window的一些坑 若上一项检查完成,我们可以继续设置所需的构建工具.使用 windows-build-t ...
- Parallel.For 平行算法 使用
之前看到Parallel的用法,觉得很高深,很腻害,今天专门抽空研究了一下,发现还是很easy的. .NET Framework 4.0 新加的功能,所以4.0之前的无法使用哦. 下面介绍一下,Par ...
- day0203 XML 学习笔记
day02, 03 1. xml语言和作用 2. xml语法详解 2.1 xml 语法声明 2.1.1 encoding 属性 2.1.2 standalone 属性 2.2 xml 元素(Eleme ...
- 实例演示如何在spring4.2.2中集成hibernate5.0.2并创建sessionFactory
本文地址:http://blog.csdn.net/sushengmiyan/article/details/49388209 文章作者:苏生米沿 本文目的:使用spring4.2.2集成hibern ...
- 计算机网络之远程终端协议TELNET
TELNET 是一个简单的远程终端协议.用户用 TELNET 就可在其所在地通过 TCP 连接注册(即登录)到远地的另一个主机上(使用主机名或 IP 地址). TELNET 能将用户的击键传到远地主机 ...
- cassandra 3.x官方文档(2)---架构解析
写在前面 cassandra3.x官方文档的非官方翻译.翻译内容水平全依赖本人英文水平和对cassandra的理解.所以强烈建议阅读英文版cassandra 3.x 官方文档.此文档一半是翻译,一半是 ...
- python数据挖掘orange
http://blog.csdn.net/pipisorry/article/details/52845804 orange的安装 linux下的安装 先安装依赖pyqt4[PyQt教程 - pyth ...
- springMVC源码分析--@ModelAttribute使用及运行原理
这一篇博客我们简单的介绍一下ModelAttribute的使用和运行原理. 1.首先@ModelAttribute是使用在方法或者上的,当使用在方法上时其作用于本身所在的Controller,在访问C ...
- ejabberd编译更新脚本
ejabberd编译更新脚本 (金庆的专栏 2016.8) 用rebar编译ejabberd源码,然后复制编译所得beam文件到ejabberd安装目录, 调用ejabberdctl热更新. call ...