[转]浅谈软件用户界面设计

来源:互联网 发布:淘宝能买到可莱性吗 编辑:程序博客网 时间:2024/04/29 11:02

  界面的好坏会直接影响企业的形象,对于这一句话的理解,我猜某些人会把“界面好”和“界面华丽”、“界面坏”和“界面朴实”相对应。界面的好坏的衡量,在一定程度上与其是否华丽有关,但是并非绝对,而是具有针对性。比如说面向个人用户的音乐播放器,无论是传统的Winamp,微软老大的Windows Media Player,或者“外星人做的”Sonique,它们的界面的发展方向都是尽量华丽,但是另一群人开发出了foobar 2000,他们认为音乐播放器就要专注播放音乐(以及实现周边的功能),其它方面不值得花精力下功夫,他们也赢得了相当多的追捧者。这是对于个人用户,而对于商业用户使用的软件,情况又大有不同。例如Office系列,为什么它不像某些软件一样,完全更改窗口的外观?用户会长期和这些软件打交道,一切不耐看的东西都不应该出现在它的界面上。(据说)Office XP中鼠标悬停菜单或工具栏时图片会浮动并加上阴影这一特性被证明是不耐看的,所以在Office 2003中这个功能被取消了(未经证实)。再比如更高端的商业软件,尤其是要涉及到跨平台运行的软件,界面是否华丽在界面设计中更被当作一个次要的因素来考虑。比如3DS Max,我在第一次接触到它的界面时甚至感到不适应;比如Pro/e,它的界面也很普通。在一些使用JAVA开发的软件中,这些问题表现的更明显,比如Borland JBuilder(我不能确定它是否由JAVA开发,但是它是进行JAVA开发的常用工具之一)。
  决定界面是否优秀的一个重要因素,是界面的易用性。界面是用户和程序算法打交道的工具:界面不易用,算法再精妙也毫无意义。在界面的易用性方面,首先就要考虑界面的布局。设计界面不像绘画之前的设计过程,不能使用传统的方式构图:),但这不意味着控件的胡乱堆砌。以Word 2003为例,单击菜单上的设置|选项,弹出的窗口虽然内容繁杂,但是布局井井有条,不同功能的选项被放进了13个tab中(数据根据所安装的组件不同而可能发生变化),类似功能的选项也被细分。界面是否符合用户的习惯也是一个需要注意的问题。比如用户经常看到的属性/设置窗口就像控制面板中大多数设置窗口一样,一个宽度小于高度的窗口,中间放着一个TAB(即使这个TAB只有一页),下面是确定取消(可能还有应用)。还拿上面举的Word的例子来说,它的设置窗口很大程度上符合了用户的习惯,甚至为了确保窗口大小尽量一致,在设置界面里它放弃了使用Frame控件而采用另一种方式来分组选项(分组名加一条凹线)。不过我觉得这样的布局太过紧凑,会给用户带来一定的视觉压力。
  界面的其它一些细小的方面也会影响到用户对界面的评价,例如字体。Windows环境中,适合中文软件的字体是9号宋体,而8号Tahoma更适合英文软件。如果字体过大,就会影响软件的美观,因为Windows下面显示的字体只有那个水平,不像MacOSX中支持字体反走样(即字体抗锯齿,虽然WinXP中添加了这个功能,但还是不尽人意)。相反,如果把中文字体设置为8号Tahoma,在Win9x/ME的环境下中文字体显示就会很小,让用户觉得很不舒服。再例如按钮大小。用VB中常用的长度表示单位,按钮的最佳高度应该是300。
  再说说关于Windows Longhorn的新界面引擎问题,Longhorn中将会使用叫做“MyGame”的引擎绘制用户界面,“MyGame”实际上就是DirectX 10。我认为这种改革对于某些用户来说会很不错,我用过早先Microsoft 泄漏出来的Longhorn版本,它的界面的确是十分华丽,但是它在我的机器上运行缓慢。也许你说到MS发布Longhorn时机器的配置会高到让你现在的机器出汗,但是就现在来看,情况可能并不是这样。我现在的机器是Pentium M 715/512MB DDR333,可是用XP的标准界面跑XP时我依然觉得它很慢,而现在距XP发布已经有三四年了。我希望操作系统会占用尽量低的资源,如果不是需要它提供的一些功能方面的特性,我甚至愿意回过头去用Windows 95,这样我就可以让我的电脑有限的资源干更多的事。Windows是越来越华丽,但是微软十年来始终没有解决Windows使用了一段时间后速度显著减慢的问题。我一般一个星期重装一次系统,即使我现在使用的是以稳定著称的Windows 2000。
  Windows变得华丽,这还是针对个人用户。比如针对企业用户的Windows 2003,Theme服务是默认被禁用的。
  我曾经尝试过使用图片,使用Flash,使用HTML做应用软件的界面,我想在这些过程中我都收获不小,以上是部分心得,有不当之处还请各位指教。


以上文摘引自Hillinsilence的原创Blog: http://blog.csdn.net/sworddx/services/trackbacks/312614.aspx