Blog on 27th Floor
主页 随便 电脑 电影 社会 阅读 下载 本站 存档
主页 随便 电脑 电影 社会 阅读 下载 本站 存档

软件的简单性

12/12/06。  cathayan.org版权所有,保留一切权利。转载请保留此说明。谢绝商业转载。


著名的Joel又发表了一篇程序设计简单性的文章。上回是说Windows Vista那个乱七八糟的退出按钮,然后就引起原设计者现Googler现身,然后变成了对微软的管理的批判。现在是讨论程序设计怎么才算简单的问题。

有人说简单这个东西被高估了,根本不是那么回事。Joel基本上是同意这个说法的,他认为程序绝不能在功能上简单,每一次改版都应该添加新特性,新功能,这样才能活下去;也不能因为80%的人只用20%的功能,然后就只去实现那20%的功能,这样必败无疑。

他举的例子是作为评测者的记者,他们总会试上一番,然后说某某功能怎么没有啊,真烂。这种说法实在是见的太多了,比如对Firefox,每个新用它的人都会说,怎么设置单窗口啊,又一个问怎么能不用标签浏览啊?然后就是能不能用它上FTP啊,能不能Telnet上BBS啊。所幸Firefox有扩展系统,在它的基础上可以实现这些我觉得有点莫名其妙的功能。

微软是这类大众型软件的领袖,所以对这个问题一定是理解深刻,所以它才会在Office里面塞进了大量普通人永远用不到的功能。之所以这样,是因为无法限制用户的思想,每人一个想法,你不知道每个人都会如何来操作。看上去苹果的iPod是简单的,缺很多功能,不能录音,没有收音机,放进去的歌就不能方便地拿出来,在一个电脑上用iTune更新到另一台电脑上就会被抹干净(有些是因为版权控制的原因);但Joel认为它在许多方面并不简单,比如苹果已有的用户群,粉丝们,干净的设计,情感诉求,美学,操作反应快速,直接用户反馈,按用户使用模式设置程序的模式因而可用性好等等,这些因素让它很有吸引力。

又或者如传统的UNIX哲学,一个程序只干一件事并且干好,但给其他程序留出接口,大量的命令行工具都完美地遵守这一要求,一个程序也许干不了许多事,但几个合作起来功能就大得惊人。但Unix上面也很复杂的东西,比如Perl(干一件事可能有N种写法,写完了自己都看不懂),Emacs(有人说它可以是任何东西,除了编辑器),甚至Vim,它们都是一个平台,提供了扩展的方法,然后就变得非常复杂了。

很难说哪种方法好。像Perl虽然杂,但高手低手都可以找到自己适合的方式,也很不错;Emacs更杂,但好在掌握之后可以用它干许多事,也算很方便吧;但像sed/cut/awk这些shell程序能给别人留出接口,自己只干自己的事也不失为一种方式,就像扩展iPod的小设备也很多。

12/12/06 00:48:00,由cathayan发表。目录:电脑

这篇文章已经关闭,不能添加评论和投票
I am watching and will delete all spam.

我的E-Mail


Copy&Paste Exchange

访问CPeX Group

订阅Feed

订阅Feedburner
Feedsky订阅
本站订阅

请登录

导航

cathayan.org Web

最新贴

RIME 小狼毫/鼠须管的极点及五笔拼音配置
Software that rocks or sucks less
一棵热带的树换新叶的过程
几个有用的Vim招术
论语七 述而
Nomacs 图像浏览器
Windows 文件校验
Windows 10 文件批量命名简单方法
Windows 10 文件删除高级操作
本站也算是有响应式设计了

最新评论

Powered by

Powered by Nucleus CMS

版权声明

Creative Commons License
Blog on 27th floor by Cathayan is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License.
Powered by Nucleus CMS v3.71. Best view with Mozilla browsers.