Programming 版 (精华区)
发信人: SwordLea (飞刀李), 信区: Programming
标 题: Writing Solid Code 序
发信站: 哈工大紫丁香 (Tue Apr 19 15:28:56 2005), 转信
献给我的妻子Beth,
以及我的双亲Joseph和Julia Maguire
────为了他们的爱和支持
序
1986年,在为几家小公司咨询和工作了10年之后为了获得编写Macintosh应用程序的经验,我特意到Microsoft公司工作,参加了Macintosh开发小组。这个小组负责Microsoft的图形电子表格应用程序的开发。
当时,我还不能肯定想象的代码是什么样子的,我想也许应该既引入入胜又雅致吧!但我看到的代码却很平常,与我以往见到的其它代码没有什么不同。要知道,Excel有一个相当漂亮的用户界面 ─── 它比当时其它基于字符的电子表格软件更容易使用,更加直观。但使我感受更深的是产品中包含的一个多功能调试系统。
该系统旨在自动地问程序员和测试者进行错误报警。其工作方式非常象波音747驾驶仓内向驾驶员报告故障的报警灯。该调试系统主要用来对代码进行监视,它并不过多地对代码进行测试。虽然现在该调试系统采用的概念已不再新鲜了,但当时它们的广泛使用程度以及该系统有效的查错能力还是吸引了我,使我深受启发。没过多久,我就发现Microsoft的大部分项目都有多功能的内部调试系统,而Microsoft的程序员都高度重视代码中的错误及其产生原因。
在做了两年Macintosh Excel之后,我离开了该开发小组,去帮助另一个代码错误数目超常的小组。在开发Excel的两年中,我发现Microsoft虽然壮大了两倍,但许多老项目组熟知的概念并没有随着公司的壮大而传到新项目组。新程序员不象我加入Microsoft之前时的老程序员一样对容易引起错误的编码习惯特别重视,而只有一般的注意。
在我转到新项目组六个月之后,有一次我对一个程序员伙伴提到:“应该把编写无错代码的某些概念写成文字,使那些原理能在新项目组传开”。这时另一位程序员对我说:“你不要总是想着写文档,为什么你不把这一切都写下来?为什么你不写本书,问问Microsoft出版社是否愿意出版呢?毕竟这些信息不是谁的专利,其作用不过是为了使程序员更加重视错误。”
当时我对这个建议并没有多想,主要原因是没有时间,而且以前我也没有写过书。以前我所做过与写书最有关系的事情,不过是在80年代初协助别人主办Hi-Res杂志的程序设计专栏,这与写书毕竟不是一回事。
正如您所见到的,这本书还是写出来了。理由很简单:1990年,由于错误越来越多,Microsoft取消了一个尚未公布的产品。现在,错误越来越多已经不是什么新鲜事情,Microsoft的几个竞争者都因此取消过一些项目。但Microsoft因为这种原因取消项目,还是头一次。最近,随着接连不断地出现产品错误。管理人员终于开始叫嚷“受不了啦”,并采取了一系列的措施企图将错误率下降到原先的水平。尽管如此,仍然没有人将这些错误因由记录下来。
现在,Microsoft已经比我刚进公司时大了九倍。很难设想,倘若没有准确的指南,公司怎样才能将出错率降低到原来的水平。尤其是在Windows和Macintosh的应用越来越复杂的情况下,更是如此。
以上就是我最终决定写这本书的原因
Microsoft出版社已经同意出版这本书。
情况就是这样。
我希望您会喜欢这本书,我力图使本书不那么枯燥并尽量有趣。
Steve Maguire
西雅图,华盛顿
1992.10.22
致谢
我要感谢Microsoft出版社中帮助本书问世的所有人,尤其是在我写作过程中始终手把手地教我的两个人。首先我要感谢我的约稿编辑Mike Halvorson,他使我能够按照自己的进度完成了这本书,并且耐心地解答了我这个新作者提出的许多问题。我还要特别感谢我的责任编辑Erin O’Connor女士,她用了许多额外时间及早地对我写出的章节提出了反馈意见。没有他们的帮助,就不会有这本书。Erin还鼓励我以幽默的风格写这本书。她对文中的小俏皮话发笑当然不会使我不快。
我还要感谢我的父亲Joseph Maguire是他在70年代中期把我引入早期的微机世界:Altair、IMSAI和Sol-20,使我与这一行结缘。我要感谢我于1981~83年在Valpar International工作时的伙伴Evan Rosen,他是对我职业生涯最有影响的几个人之一,他的知识以及洞察力在本书中都有所体现。还有Paul Davis,在过去的10年里,我与他在全国各地的许多项目中都有过愉快的合作,他也无疑的塑造了我的思维方式。
最后感谢花时间阅读本书草稿,并提供技术反馈意见的所有人。他们是:Mark Gerber、Melissa Glerum、Chris Mason、Dave Moore、John Rae-Grant和Alex Tilles。特别感谢Eric Schlegel和Paul Davis,他们不仅是本书草稿的评审者,而且在本书内容的构思上对我很有帮助。
--
俺是个原始人,喜欢到处穷溜达。有天逛到一个黑不溜秋的地方,觉得很气闷,就说了句“要有光!”然后大爆炸就开始了,时间就产生了,宇宙就初具规模了……
※ 修改:·SwordLea 于 Apr 21 16:59:10 修改本文·[FROM: 202.118.246.241]
※ 来源:·哈工大紫丁香 bbs.hit.edu.cn·[FROM: 202.118.224.2]
※ 来源:·哈工大紫丁香 bbs.hit.edu.cn·[FROM: 202.118.246.241]
Powered by KBS BBS 2.0 (http://dev.kcn.cn)
页面执行时间:3.601毫秒