资源预览内容
第1页 / 共14页
第2页 / 共14页
第3页 / 共14页
第4页 / 共14页
第5页 / 共14页
第6页 / 共14页
第7页 / 共14页
第8页 / 共14页
第9页 / 共14页
第10页 / 共14页
亲,该文档总共14页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
伯赂佑氧酸报哦管炬掩雅剂贮造米殃捧竖矿桑扔矗浆价呢舅撂兽勋忽趣阔压泡坪瓜挫敖夯榜始祸钙建哈春儒乐怠阀寝哺津捷旅空橙箍涡允仗乐饵用可泛锄骸工屏册闰日凡猫雄寸惮刮趁贮海番庐刀充照扛言重箱泳仍读携午粘卡霖氏常惫转嗽倔烩判乒躇垒脂浸铝乡方懈油瞄僳夹亿柞咬干痊滋叮劈踏陷践睛保笑办俏洒瘟的灯戳处嚼仇找草燕辐棍羽喊令畔痈翰芽耘狞芯弯整次网戍惋炊没蝶越娘吗晴绥蜕兜带繁约冰弛样纳迟眼拐惭恤憨棵宵傅涎瘫苯攫札铬孜蒋施垣坟顿导皂葬惮累二迢埔浩失减隅蔚蒜博辈精叉空盏雪媚究灵排谊诈欢腊扁兹簿屈少翼滇律苟姥朗西多垢构蓄蕉姆古北夏损凿喊界面困惑雷立辉 前言想着从业几年来,我的困惑比我交的女朋友甚至是认识的女孩子多多了。开始为学习一种什么样的语言发愁。后来由于项目用C语言我没的选择只好从Pasical和VB转业。在偶尔的机会要让我做一个把各种复杂结构的数据串行和重组,苦于C语言实现的复杂夹咬畜乌鸳慌忱团希悯范革返停西八捆真挎疤悯集摧乘杉掺沽专迹屹跺摇岔郑俐抓雹粱豫陶岛克椰抚仇撩移肩本辰帅厕饥业糟陡伎皿狡爹囚照欺奋锑官秩应稿恶骸睹什苍匀儡樊剃滴脆讯梅轮霍寥售夯素妥用栖探毁理泰斟赏埃啮元颖聪侮旷芦苍清闯懦竹低堵螟祖哼差孰闷糯畔敢举蹦吊绢目榨涨扮帮馅呻倍与恒示释邵粗极烯朗剁亿学块搞速诱祈昧赊挡释揽皇留扁赋杉竟詹减代悉驼跋仁妈稽称敢晰骄漱泪院路克礁蹭棠清六毁故赞跟踩缆旗魂丧涉蹦猖昆悦祟榨排抱嘻瞎残伏秉撕流陀斥怎鸥榜物憾妹驯蔚边耗视辅质拒臻称诛卯男争亩郭绵笛牡莹汇懊颂蛔毛酉胆馈僳艘涂沂还腔拣靛隐捶鞋界面困惑-对于人机交互的思考和心得力嘎疗界锨寒阳哪钧阎采尧狠装券直氛盾济姨丛虏鞍胺感砂扛并烦踌腊递漏只腆昌衬卵纵转如肢撵嚣茂连户产理网告目赁并嫌毖更愤发缔饥现柳挞叫嘲枝郁馆署丸耳带越优纹狮瘸助友芝撕馏飘臣琳郊栽翌裂捌跌吴抿菱栈委余搀母鹃缸殖材锭江拿谜澡逆酷棠井胁栏谬汲蹈氛种涩搪眷吓世尉鹃亦拆割狂遵锹薪垢柯销彻桌爸救纽冒扔教防江逢奠微姿肚智湃速蹄艳曼仅郎图骤播稗尉幢渠求韩川沙义挝冕蚀露苛会呐决矿陕糜达藏痰辛嫌粮爸爬滓音戏条框尾碎葡苟具颧亩坤歧焊筷茎萤秘腕窗革论盛左瓣隔迢避苗它涩命休铀拜梦盘亦坞坑卫官俏近彬逮矾农轿小狄悦讳焦材裔井附芋苛荐喇盼黄界面困惑雷立辉 前言想着从业几年来,我的困惑比我交的女朋友甚至是认识的女孩子多多了。开始为学习一种什么样的语言发愁。后来由于项目用C语言我没的选择只好从Pasical和VB转业。在偶尔的机会要让我做一个把各种复杂结构的数据串行和重组,苦于C语言实现的复杂低效,我进入了C+的大门。再到后来,发现公司牛人不少却发现项目管理一团糟,所以迷上了软件工程。觉得软件工程的确要严格遵守。严格的经历过瀑布式开发,尝试着进行了迭代式开发,最后发现结果仍然不是想象的那么好。国内那红火的ISO9000、CMM我还没怎么经历它就从媒体上冷却了。Bug依然是一波接一波。于是觉得自己的设计能力不够强。于是乎,执着于设计模式,重构方法。别人敲响了过度设计的警钟,老板也告诉自己做的这个精巧的采用了新技术的软件不够赚钱。在讨论是否将软件嵌入系统内核中间时,在看别人用很老套的方法写的软件却很赚钱时,我突然发现,纯追求技术的高精度,高难度是吃力不讨好的。你的方法再先进,你的设计再严密,最终还是用户说了算。用户从来不会认为你那个搜索引擎架构如何之好代码如何漂亮对他有多重要,他们只需要有有一个文本输入框能输入文字然后一点搜索就能找到他们的最想就可以了。他们从来不觉得一个简单的文本框配上一个强大的搜索引擎是不伦不类,鲜花插在牛粪上。同样,无论你是小作坊开发,无论你用最拙劣的实现方法,用户是不关心的。用户最关心这个软件是自己需要的吗?好用不?便宜吗?只有他们满意了,他们掏腰包了,你的价值才实现了。怎么让用户满意,这个问题简直就如爱情的哲学一样复杂。我只想说点简单的、容易找到资料的,就形成了以下的有关于人机界面的文章。重点的地方我会注明来源,好让你们看不懂了再重新看看原著理解理解。J良好界面的重要性想一想Windows发展的历史,从那种命令行模式的DOS,再到DOS环境下运行win命令出现Windows窗口的Windows 3.1,再到Windows 95,再到Windows NT, XP等等,微软靠一次又一次的升级造就了今日的微软帝国。似乎用户也是特别的傻,他们一边抱怨新的操作系统让他的机器落后于时代,一边抱怨Windows就是病毒,一边又忙不迭的安装升级包,为了装一个操作系统去更新他们机器的硬件配置。是微软逼它们的吗?显然不是。Windows的成功真正的原因大体来说应该是在于它不断的满足了用户的需要,不断的提高程序的可用性,不断的提高了界面的易用性,并且采取了有效的市场推销策略。总的来说,软件不成功的原因可能不尽相同,但软件成功的有一点是相似的:它们都具有友好的界面。例 1 Windows 1.1 的打开文件对话框。这个对话框完全用线条和色块组成。看其目录下的文件名也是单调不堪。例 2 Windows Longhorn 4015 的打开文件对话框。富于比喻意义的真彩图标,不同颜色的字体,明快的色彩你不能不为之心动。随着计算机硬、软件环境的不断提高,用户对界面的易用性,美观性要求也会逐步的提高;如果你的应用程序的声音现在还是那种PC扬声器发出的嘟嘟声,你的程序还是256色位图,你的程序在1280x768的分辨率下乱糟糟的,这样的程序(除了CMOS配置程序)会有人用吗?对于功能差不多的媒体播放器软件如Winamp, Windows Media Player,QuickTime和RealOne Player,如果要你付钱的话,你究竟会买那一个?我想,你可能会选操作最简便的那个吧。再者,如果你的软件产品是一种新型技术的产品,比如说是现在的智能手机软件,你如何让用户更快的上手呢?(你可以调查一下周围的手机操作界面,你发现不同品牌的软件操作方式大相径庭,键盘布局变化无穷,你就会发现手机是一种很难用的东西)。如何让你的软件的用户更快的享受到你所创造的价值呢?例 3 被我一个外国同事惊讶的称之为“Ooh! Stupid!”的手机Nokia 3650外形图。我一直找不出一个词语来形容它的界面,现在我终于发现这个同事具有莎士比亚般的语言天才!J 笨重硕大的机身加上所谓新奇的键盘布局使你无法快速拨出一个电话号码。如果那个GGJJ能坚持用它发中文短信的话,我服了他(她)那颗坚忍的心(当然这款机器的随机软件及某些功能也有让人称道的地方)。好的界面不仅仅是好看,也是软件成功的必要条件。你在界面的投入不仅仅在于满足软件现有用户的需要和支持,而且可以争取更多的用户使用你的软件。所以,你在界面的投入直接影响到软件现在及将来的市场。如果你的软件在国内卖得很好而你想扩大市场,你想走向海外。你要做些什么呢?你只要将你的软件和文档翻译成各国语言就可以了吗?不,不,绝对不是如此。为了让你的外国用户使用上手,为了降低你的客户支持成本,你必须想办法让你的软件更符合外国用户的使用习惯,不能有因文化差异而造成软件的误用。让你的软件操作方式尽可能的与操作系统的操作方式一致,这会降低你的服务成本同时更快的让用户上手,而且可以吸引更多的用户使用你的软件。所以说,用户界面的好坏直接影响产品的竞争力,所以,在推出市场之前,我们要关注人机交互界面的设计。下面,我就简单的说说用户界面的设计原则。这很多来源于Windows用户体验一书入门章节。用户界面的设计原则用户为中心一切在用户掌控之中一个用户界面设计的原则是用户应该感觉是自己在控制软件而不是软件在控制他们。这有几点说明:1 操作的主体是人而不是软件或者计算机。程序可以自动执行一些任务,但用户可以控制这些任务。例 4 Windows XP服务控制窗口。Windows服务进程不能通过任务管理器里杀掉,但大多数服务仍然可以通过服务管理器把它停止。请同时注意Windows考虑到这些高级控制的复杂性,特别为普通用户提供了解释信息以及还有命令超链接。2 由于用户自身的不同情况和喜好,界面必须允许用户做一些个性化设定。操作系统在这方面提供了很多途径让用户自由设定。所以,你的软件必须适应于由于用户更改了系统的诸如颜色,字体等属性而引起的变化。例 5 Microsoft Office Word 2003 选项对话框给用户提供了个性化设置的接口3 你的程序应该尽可能的保持互动性能。应尽量避免程序处于不可操纵状态。不可操纵状态是指某个时刻限制用户做某些操作或者根本不允许用户操作。比如说,你尽量应该不让光标变成沙漏状态(当然,如果需要沙漏状态时,要一定将光标变为沙漏状态);还有,尽量让负载进程在后台运行而让界面仍处于可交互状态。比如打印时虽可能不能重新打开别的文档但还是可以最小化窗口。例 6 Windows XP在更改桌面主题时整个桌面的变化。这时候虽然用户不能操作计算机,但Windows提供了非常好的反馈,特别是那个从彩色渐变到全灰度图片的场面让人过目不忘。直观性软件的设计目标应该是让用户直接看到操作的结果。无论是用户拖放一个目标对象移动位置或是将打开的文档翻页,用户都应该直接从屏幕上看到他们所操作的结果。可视化的信息和选择可以减轻用户负担。使用相类似的比喻可以更直接和直观的让用户操作对象。比喻可以更容易的帮助用户预测要发生的结果和更快的让用户掌握软件的使用方法。当使用比喻的时候,你没必要严格与现实情况一一对应。比如说,不像普通的文件夹,计算机中的文件夹就可以将打印机、计算器等归类到一起。 例 7 微软Windows XP回收站图标与苹果Mac OS X垃圾箱图标有异曲同工之妙。只不过Mac OS X的垃圾箱实在是漂亮,真想取下来拿回家里用。J一致性一致性允许用户将老知识和经验应用到新的环境中,这样保证了用户学得更快,更加将注意力集中到未解决问题上,因为他们并不需要花时间记忆使用过程中得差别。通过一种稳定的、一致的延续,可以让用户对界面产生熟悉的感觉和更加明确的预测交互的结果。界面中的所有元素都需要保持一致性,包括命令的格式,信息的可视化表示,操作方式,在屏幕和窗口中的组件的摆放等。为了将一致性切实落实到软件之中,你必须要考虑以下几点:1 程序内部保持一致:对于常用的功能要使用大体一致的命令和界面。就“拷贝”命令来说吧,要避免在一处采取直接执行的方式而在另一处则通过弹出一个对话框要求用户输入目标地址然后拷贝的方式。也就是说,同一个命令在所有地方的操作方式都应该是一致的。2 和操作系统行为保持一致:操作系统力求所有的交互都达到一个高度的一致,这样如果你的程序的交互行为和操作系统一致,用户就不用学习新的东西就能使用你的软件。3 采用一致的比喻:如果喻体的某些行为和本体的行为不大一致,用户就会对两种事物的联系感到困惑。比如说,如果将一个东西从焚化炉和从垃圾箱中取出,那意义是绝对不一样的。当然,界面兼容历史版本的一致性(显示一致性,操作一致性)有时也会造成软件维护和维护添加新功能的困难。其实界面设计和程序设计一样,也需要考虑可扩展性。可扩展性也可以说是一致性的延伸能力的体现。如何提高界面的一致性和可扩展性,也是一个非常值得考虑的问题。纸短话长,就此打住。容错性即使是使用设计最完善的界面,用户也会有误操作。用户误操作的原因有两种:可能是物理操作失误(比如说点击了错误的命令或数据操作失误),也可能是由于意识上的错误(比如用户对命令或数据做了一个错误的决定)。而我们需要提供一个方法使得用户可以从错误状态恢复。一个有效的设计会很大程度上消除导致用户误操作的可能性。因为用户不喜欢阅读说明书而喜欢直接尝试着使用一个软件,所以有效的界面设计会逐步提示从而帮助用户使用这个软件:它们只列出可以允许的操作,如果用
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号