《代码大全》传奇

 文/金戈

 

《代码大全》(第2版)的中文版已经面世,我作为本书译者之一,受《程序员》杂志之邀,来写一篇文字,讲讲《代码大全》这一传奇佳作背后的故事,实在荣幸。
讲这本传奇佳作的故事,还要从它背后的传奇人物说起,他就是Steve McConnell(斯蒂夫·麦克奈尔)。
距离微软美国总部和波音公司不远的地方,就是华盛顿州的第五大城市——Bellevue。McConnell就和他的妻儿住在这个美丽的地方。
McConnell是一位牧师的儿子,然而他选择了一条不同的道路。早年,McConnell在华盛顿州的Whitman大学学的是哲学系,并取得了学士学位。当时,学计算机只是他的第二计划。
正是在大学的计算机编程课堂上,McConnell最早接触到编程。对他来说,编程序并不是什么难事,然而直到毕业的时候,他也不知道自己以后要做什么。McConnell心想,反正学过编程,出去就能找到程序员的工作,一边工作一边再慢慢地想以后到底要干什么吧。就这样,在走出校园后的那几年,McConnell就一直在寻寻觅觅,想知道自己以后到底要做什么。直到一天早上,他一觉醒来之后突然就意识到,原来他已经在做着他想做的事情了——做一名软件开发人员。从此以后,McConnell就和编程结下了不解之缘。
McConnell在大学实习阶段就开始为一家保险公司写程序,积累了一些编程经验。后来,McConnell去了另一家软件公司,编写面向最终用户的软件,又积累了不少经验,却最终由于公司差劲的管理和不佳的道德而选择了离开。不过在这段时间, McConnell知道了IEEE(电子工程学会),并决定长期为该组织撰稿写作,这也成为他职业生涯中的一项重要选择。
1989年从那家公司离职后,McConnell已经有了四年多在公司工作的经验。这时他放弃了给某家公司固定打工的念头,攒了大半年的备用金,收集了西雅图地区一些大的科技公司的联系方式,开始了新的工作。McConnell一边做着他的咨询工作,一边读着“成人自考”。他所服务过的公司就包括有大名鼎鼎的波音和微软。最终,McConnell在西雅图大学以优等成绩获得软件工程硕士学位,并被列入该校美国大学优等生荣誉学会,几年后他还成为该校的副教授呢。
接下来,McConnell又想做另一件事了,就是写一本书了。他很想把他这么多年来的编程经验和所学到的有用知识写出来和其他人分享。于是,他花了一年半的时间完成初稿,交给出版社,而后又历经了11个月的时间完成终稿,又花了11个月的时间进行编辑,最终完成了这本处女作,并在1993年由微软出版社出版。按McConnell的话说,他就像做一项软件工程一样精心地写作这本书,前后花了近4年的时间。如果再算上McConnell此前积累经验、收集素材、整理代码等等,真可谓是十年磨一剑啦。
这本书,正是被我们称为传奇之作的《Code Complete》。
1994年,McConnell所写的这本《Code Complete》被美国《软件开发》杂志授予震撼大奖(Jolt Award),这可是素有软件业界奥斯卡之奖之称的巨大荣誉。
在Amazon网站上,这本13年前的著作至今已被上百位读者打过分[LD1],目前得分是4.5颗星,可见它在读者心中的价值。让我们来看看国外的读者们读了此书之后都说了些什么吧:
◆ 如果你只想买“一”本关于软件开发的书的话,就买这一本吧!
◆ 要让这本书发挥最大的功效,一定要把它放在身边随时备用……直到你的同事把它“顺”走。然后你还得再买一本,还是要放在触手可及的地方。如此反复,直到你身边到处都能找到这本书的时候,这时候再买一本自己留好。从1993年到现在(这是读者1996年10月发的评论),我已经“经手”11本《Code Complete》了,不过我还是觉得它物有所值!
◆ 是程序员就一定要读过这本书!然后再读一遍!之后……找个时间再读一读!把它放在你的桌上(现在它应该已经够旧了)——让别人把它“偷走”——然后再买一本回来——如此循环往复……
◆ 我想,我从来没见过如此吸引人的计算机书——写得真好,关于构建软件的几乎所有细节都写得恰到好处……我已经读过两遍了,每一遍都读得很爽。我曾把这本书当成结婚礼物送给我的一个朋友,他也是做程序员的,可没过多久他就差不多快离婚了——因为在度蜜月的时候他还只顾着读这本书……
◆ 这本书里所讲的内容在学校里没人教过,但是学校真应该教教这些内容!
最后这位读者说的没错,这本书的内容在当时美国教计算机的学校是不教的。当时的美国高校逐渐呈现出两极分化的趋势,传统的计算机科学(Computer Science)教育不能很好的适应业界的人才需要,因此亟待加强软件工程(Software Engineering)方面的教育。随着《Code Complete》这本书的影响力越来越广,作为一本内容翔实、生动、全面、权威的软件构建与编码技术手册,它轻理论而重实践的特点获得很多高校的青睐,于是美国包括MIT(麻省理工学院)在内的十多所大学都最终将其作为计算机软件学科的教材。可以说,这本书影响了全世界很多国家一代的程序员。
到今天,McConnell已经著有7本书,而其中的3本都曾获得《软件开发》杂志的震撼大奖或生产力大奖,这不能不说是一个软件业界作家不可跨越的奇迹。1998年,《软件开发》杂志的读者将McConnell评为软件行业中最具影响力的三人之一,与大名鼎鼎的Bill Gates和Linus Torvalds齐名。

Steve McConnell的7本著作(1993-2006)

● 1993年——《代码大全》(Code Complete)Amazon网站4.5星。
● 1996年——《快速软件开发》(Rapid Development),关于优化软件开发计划的策略和最佳实践。Amazon网站5星。
● 1998年——《软件项目生存指南》(Software Project Survival Guide),手把手教你成功运作软件项目的指导手册。Amazon网站4.5星。
● 1999年——《淘金热过后》(After the Gold Rush),创建真正的软件工程专业。Amazon网站3.5星。
● 2004年——《专业软件开发》(Professional Software Development),《淘金热过后》一书的第二版,还是讲软件工程专业的事情。Amazon网站4星。
● 2004年——《代码大全(第2版)》(更新了大量内容,如Web开发、面向对象软件开发、敏捷软件实践,以及其它现代软件构建问题。)Amazon网站5星。
● 2006年——《Software Estimation》,论述软件项目规划与估算的专业著作。

Advertisements

发表评论

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / 更改 )

Twitter picture

You are commenting using your Twitter account. Log Out / 更改 )

Facebook photo

You are commenting using your Facebook account. Log Out / 更改 )

Google+ photo

You are commenting using your Google+ account. Log Out / 更改 )

Connecting to %s

%d 博主赞过: