读《Windows 编程启示录》

| | Comments (1) | TrackBacks (0)

这个周末利用回天津参加朋友婚礼的空闲时间,读完了新买的《Windows 编程启示录》 (The Old New Thingn - Pratical Development Throughout the Evolution of Windows). 该书的作者Raymond Chen用一种特别轻松幽默的方式讲述了Windows开发中的一些事情。有的是关于界面设计,有的是关于API设计,有的详细介绍了Windows的一些工作机制,还有一些工作之外的趣事。我一口气把它读完了(当然掠过了一些不太感兴趣的,譬如对话框管理器的内部机制),觉得有些内容给了我很多启发,回答了我一直想知道的问题答案,还有一些印证了我一直以来的一些想法。下面列出来:

  • 1.3节 “在使用对话框的时候,我们经常会遇到这样的问题: 人们总是抓住一切机会去忽略对话框”。
    没错没错,在我的生活工作中,已经遇到过n次了,一般情况就是同事或者朋友遇到了个困难像我求救,我就看着他让他重试一次,这时会有一个对话框弹出来,还没等我看清楚是什么提示/错误,他就以迅雷不及掩耳盗铃之势叉掉那个对话框,然后继续等待,过一会儿无辜的看着我说:“你看,我什么这个东东不能用呢”。其实那,一般来说,那个对话框上就已经明确说明了故障的原因了,比如什么什么找不到、或者请插入光盘等等。
    那个时候,我就会教育那个人说,你着什么急啊,有对话框写得清楚了,为什么不看呢。呵呵。
    现在知道了,其实大部分用户都是害怕去读对话框的,尤其是需要他们选择的对话框,他们会因为担心选错了,就会把对话框放在那里不管,如果不管就不能继续的话,他们一般都会选择取消。
    设计软件的时候,如果知道目标用户就是这种用户,就得尽量避免使用这种对话框了。以前的安装程序就有这样比较蠢的实际,就如21.12节介绍的,安装程序会有一个步骤让用户输入安装的目标目录,并且已经给出了一个默认的目录,比如“C:\program files\Microsoft puzzle collection”,当用户点Next的时候,安装程序发现没有这个目录,就给出一个对话框“发现C:\program files\Microsoft puzzle collection 并不存在,你确定要创建吗?”用户就懵了。你说这不是傻么?本来就是新安装嘛,就应该新创建一个嘛。
  • 1.10 自动售货机的用户界面设计
    这一节挺好玩的, 可以用于面试PM. 自动售货机里的货物可以用行列摆放,行用A,B,C,D表示, 列用1,2,3,4表示。问题来了,如果一行里有10个商品,用户想选择C10这个商品,他应该先按C键,然后按10那个键。但是用户按10时,一般是先按1然后按0,当户先按了C,再按了1,再找0的时候,发现原来没有0,应该按10,这时已经晚了,C1那个商品已经咣当一声买下来了。
    有的自动售货机全部使用数字表示商品 1~99,这里面也有问题,我就遇到过,当年在天津站广场,我就把商品的标价当作编号输入进去了,结果咣当,出来了一个别的东西:(
  • 2.1 为什么在世界地图中,当前时区没有被加亮显示
    我还真的想过这个问题, 当时想如果加上高亮显示看起来多直观啊。我真没想到没有实现这个功能的原因,原来是源于秘鲁和厄瓜多尔的边境冲突,微软两个国家都得罪不了,最后干脆去掉了这个功能。
  • 2.9 当年去老爸单位看到了windows95正版盘里面的MTV,叫做"Good Times",真的很好听,就一直想知道到底是谁唱的,希望下载她的其它歌。直到工作了才碰巧知道了那个歌手叫“Edie Brickell”.

先写这些吧,以后有空再补充。

0 TrackBacks

Listed below are links to blogs that reference this entry: 读《Windows 编程启示录》.

TrackBack URL for this entry: http://www.ieasy.org/cgi-bin/MTOS/mt-tb.cgi/240

1 Comments

Good!

Leave a comment

About this Entry

This page contains a single entry by 科学家 published on October 15, 2007 1:16 AM.

西藏、尼泊尔之行 (1)- 在T27列车上 was the previous entry in this blog.

再看《搏击俱乐部》(Fight Club) is the next entry in this blog.

Find recent content on the main index or look in the archives to find all content.