以用户为中心的设计 |
这是UCDChina提前预览网页留下的存档,不包括作者可能更新过的内容。 推荐您进入文章源地址阅读和发布评论:http://www.web20share.com......scussion.html |
||
昨天我的一位好友写了一篇文章,名为《骑士时代的回归》(点击阅读),这篇文章给了我很大的感触。对于我来说,作为一位软件工程师,也是经历了骑士至兵团再至骑士的这么一种历程。在此,我想对这个骑士与兵团之间的历程来一次浅谈。为什么是浅谈呢?我在几乎所有的智能手机平台下都做过开发,但是除了 WM 和 Android 外,其他的都未深入,对某些平台难免会有偏见或误会,这些当然也是由未深入了解所产生的。所以本文不谈具体技术,当然就是浅淡了。 但是对于 Java 来说,毕竟还是适合多人合作的。除去代码不说,其推荐的 MVC 设计模式,就已经把程序拆成了几层。开发人员面面俱到固然可以,但是那个时候已经产生了分歧,有些人专攻后台网络传输,有些人专攻 UI 显示,甚至有一批人开始了手机开发框架的研究。这些固然都不能对最终的开发造成多大的影响,但是骑士时代已经渐渐的退去了。 而后来 S60 的推广,更是带来了一个大规模的兵团时代,从 Symbian C++ 出生的那一刻起,在手机上以骑士的方式作战就变得无比的困难。一个实用的程序往往需要几个人一起研究,一方面塞班的开发资料很少,另一方面,开发包实在难 用。一个很简单的例子,如果你想控制程序界面上的字体,控制行距,那么你不得不使用超过6个类,而且在编码上异常的复杂。我向来很佩服一个人完成一个塞班 应用的,因为他们把原本该一个兵团来做的事情,一个人包揽了。 到目前为止的 S60 V5,整个塞班的开发依然没有改善,也难怪现在越来越多的开发者从塞班转向了 IPhone 或 Android,而塞班本身的应用,特别是多媒体和移动互联网方向的应用非常匮乏,这也将导致其越来越被网络时代所排斥。 微软在移动开发上的理念,也经历了这样的转换,从开始的多人合作模式,转为单人模式。因为他们发现,在移动平台上多人协作,其实意义并不大,移动平台受硬件所限,无法像 PC 那样为一个应用来设计出优秀的架构。就那么一个小小的屏幕,做那么几件小小的事情,解决由硬件产生的种种问题才是正途,而不是把精力花在无谓的软件结构上。所谓的良构,是适合多人合作中,多人一起维护代码,显然手机的应用完全不需要这么做。 我很早就说过,在手机的开发中,执行效率第一,功能第一,至于其他的架构,代码可读性之类都是其次。不可能为了代码能让别人看懂,就牺牲掉程序的效率。事 实上,手机程序的效率将能够决定这个程序是否被用户所接受,而用户是永远不会来看你代码的。在手机开发过程中,代码写的再难看,只要效率上去了,那就是好 代码,这也是为什么需要手机开发的骑士。一个人做,怎么做都行,一群人做,每个人都受限。 最后,借用原文的一句话来收尾:为骑士欢呼!
|