程序员修炼之道--从小工到专家(十周年纪念版)(网易、趋势科技新员工培训必读)(09年度畅销榜TOP50)
基本信息
- 作者: (美)Andrew Hunt David Thomas [作译者介绍]
- 译者: 马维达
- 出版社:电子工业出版社
- ISBN:9787505397194
- 上架时间:2009-9-14
- 出版日期:2009 年9月
- 开本:16开
- 页码:333
- 版次:1-5
- 所属分类:
计算机 > 电子商务与计算机文化 > 综合
编辑推荐
网易、趋势科技等公司新员工技术培训首选用书
云风、邹飞、霍炬、徐宥、赵钟秋写书评联袂推荐
十周年纪念版新装上市,原书作者亲自作序推荐
本书前一次出版时,
172人参与评论,好评不断
推荐阅读
内容简介回到顶部↑
《程序员修炼之道》由一系列独立的部分组成,涵盖的主题从个人责任、职业发展,直以用于使代码保持灵活、并且易于改编和复用的各种架构技术,利用许多富有娱乐性的奇闻轶事、有思想性的例子以及有趣的类比,全面阐释了软件开发的许多不同方面的最佳实践和重大陷阱。无论你是初学者,是有经验的程序员,还是软件项目经理,本书都适合你阅读。...
作译者回到顶部↑
本书提供作译者介绍
Andy Hunt是一位热切的木匠和音乐家,但奇怪的是,人们更需要作为顾问的他。他的工作领域包括电信、银行、金融服务、公共服务,以及一些更奇特的领域,比如医学成像、图形艺术、Internet服务。Andy的专长是把经过验证的技术先进的技术混合在一起,创建各种新颖的——但也是实用的——解决方案。Andy在北卡罗莱纳州的罗利市拥有自己的顾问公司。.
Dave Theomas喜欢驾驶单引擎飞机飞行,并通过这样的方式为他的习惯付账,为各种难题寻找雅的解决方案,提供诸多领域里的咨询服务——航空、银行、金融服务、电信.. << 查看详细
Dave Theomas喜欢驾驶单引擎飞机飞行,并通过这样的方式为他的习惯付账,为各种难题寻找雅的解决方案,提供诸多领域里的咨询服务——航空、银行、金融服务、电信.. << 查看详细
目录回到顶部↑
前言.
序
第1章 注重实效的哲学
1 我的源码让猫给吃了
2 软件的熵
3 石头汤与煮青蛙
4 足够好的软件
5 你的知识资产
6 交流
第2章 注重实效的途径
7 重复的危害
8 正交性
9 可撤消性
10 曳光弹
11 原型与便笺
12 领域语言
13 估算
第3章 基本工具
14 纯文本的威力
15 shell游戏
序
第1章 注重实效的哲学
1 我的源码让猫给吃了
2 软件的熵
3 石头汤与煮青蛙
4 足够好的软件
5 你的知识资产
6 交流
第2章 注重实效的途径
7 重复的危害
8 正交性
9 可撤消性
10 曳光弹
11 原型与便笺
12 领域语言
13 估算
第3章 基本工具
14 纯文本的威力
15 shell游戏
译者序回到顶部↑
本书原名“The Pragmatic Programmer”,也就是“注重实效的程序员”。正如书名所示,本书将围绕“注重实效”讲述关于编程的各种话题:个人责任、曳光弹开发、调试策略、元程序设计、按合约设计(Design By Contract)、重构、无情的测试,等等。看到本书的目录,你也许会奇怪,300多页的篇幅,怎么能涵盖如此多内容?但本书的两位作者Andy Hunt和Dave Thomas的确做到了,他们知道抵达编程的各种维度的途径,并找到了一种言简意赅的方式讲述这些途径;与此同时,在书中还提供了大量资源,可以帮助你找到各种更深入讨论这些话题的读物。本书的各个小节既独立又相关,你可以从头开始阅读,也可以随手翻开任何一页开始阅读——Dave Thomas就将本书视为一本“洗手间读物”。如果你是编程初学者,你可以从本书中了解到各种编程技术和方法,根据书中的指引拓展你的编程生涯;如果你是富有经验的程序员,同样可以从本书中获益:如果一本书能够全面、明晰地总结你从实践中获得的各种认识、总结你从其他书里散乱地诔到的技术和方法,这本书就一定不是无益的。.
除了是程序员,Andy Hunt还是一位木匠和音乐家,而Dave Thomas则喜欢驾驶单引擎飞机。尽管作者未曾明言,在本书的许多地方,你都将看到与这样的背景相关的叙述。我想,对于两位作者而言,编程就和木匠活、和音乐创作、或是驾驶飞机一样,既需要禀赋,更需要坚持不懈的学习和训练——这也正是书中所说的,编程是—种技艺,一种需要用心学习的技艺。也许,只有在长久的学习之后,我们才会开始明白书中提到的“hacker”的真正含义:“Someone who loves to program and enjoys being clever about it”(摘自《自由软件杂志》)。
我仍然要感谢侯捷先生和周筠老师,他们像以前一样,为了行业的发展扶掖后进,竭尽心力。谢谢你们的支持和帮助。倘若我未能始终如一,请你们原宥。感谢本书的编辑方舟先生,他是一个诚恳、好学的年轻人,从不因我的苛刻批评而存有怨言。他的热情、他的年轻,常常让我想起自己那些古怪的、正渐渐没人记忆深处的青春时光。..
这是一本“注重实效”的书,其实也可以说,是一本“实用主义”的书。但正因为这样,两位作者在书序的最后给家人的谢辞或许就更加意味深长:
谢谢你们让我们梦想。
马维达于贵阳
E-mail:weida@fiyingdonkey.com
http://www.flyingdonkey.com ...
除了是程序员,Andy Hunt还是一位木匠和音乐家,而Dave Thomas则喜欢驾驶单引擎飞机。尽管作者未曾明言,在本书的许多地方,你都将看到与这样的背景相关的叙述。我想,对于两位作者而言,编程就和木匠活、和音乐创作、或是驾驶飞机一样,既需要禀赋,更需要坚持不懈的学习和训练——这也正是书中所说的,编程是—种技艺,一种需要用心学习的技艺。也许,只有在长久的学习之后,我们才会开始明白书中提到的“hacker”的真正含义:“Someone who loves to program and enjoys being clever about it”(摘自《自由软件杂志》)。
我仍然要感谢侯捷先生和周筠老师,他们像以前一样,为了行业的发展扶掖后进,竭尽心力。谢谢你们的支持和帮助。倘若我未能始终如一,请你们原宥。感谢本书的编辑方舟先生,他是一个诚恳、好学的年轻人,从不因我的苛刻批评而存有怨言。他的热情、他的年轻,常常让我想起自己那些古怪的、正渐渐没人记忆深处的青春时光。..
这是一本“注重实效”的书,其实也可以说,是一本“实用主义”的书。但正因为这样,两位作者在书序的最后给家人的谢辞或许就更加意味深长:
谢谢你们让我们梦想。
马维达于贵阳
E-mail:weida@fiyingdonkey.com
http://www.flyingdonkey.com ...
前言回到顶部↑
领悟程序员的哲学.
在大学的时候,编程是我的兴趣,也是当时我给自己定位的职业方向。
当我在图书馆看到这本《程序员修炼之道》的时候,直觉告诉我应该看看这本书,或许对我的成长有帮助。读完之后更加肯定了自己的直觉是对的。当时我虽然没有实际项目的开发经验,不能一时领悟其意,但我明白,这本书中总结的原则和方法对我来说是极为宝贵的,于是买了一本放在床头。
参加工作后,随着编程经验的积累,我越来越能体会到这本书中的观点。每次重读书中的章节,我都会有新的收获:再结合自己的每次经历,都能与之共鸣——这是对我影响最深的一本书,也是我向朋友和同事推荐次数最多的一本书。有趣的是,书前Kevin Ruland的评论说:这是我唯一不会出借的一本书。究竟是一本什么样的书会让大师如此爱不释手?
这本书所涉及的内容很广,涵盖了程序员成长过程中和软件开发过程中要注意的地方。从程序员的个体哲学到编码过程中的各个环节,再到团队的项目管理;从程序员要如何扩充知识,如何思考问题,如何利用有效的工具打造个人的工作环境,到项目启动之前如何建立一些基本准则,如何分析、设计、编写、测试、重构,如何实现自动化,甚至是项目团队中提高实效的原则。书中的内容全都来自经验的总结,倡导编程中正确的观念和良好的习惯,而这正是优秀的程序员必须拥有的良好素质。..
书中讲述的原则源于实践,高于实践,它们蕴涵着前辈们的智慧。随着知识的扩展、编程体验的增加,对这本书中的内容的理解也会愈加深刻。反过来,对前辈菁华的吸收,有助于我们提高编程水平,开发出更好的产品。
我深信这不是一本只要读一遍的书。这些原则看似简单,但细细品味一番,却是大哲大道,环环相扣,要理解透彻并不容易。例如,提示44告诉我们“不要靠巧合编程”,这道理看起来好像很简单,但我发现实际工作中还是很容易就犯这个错的。细想一下Bug列表中的问题,其中
大多数问题不正是由于作了不正确的假设,或者是想当然造成的吗?要是一开始就有了深思熟虑,经过了合理的设计,完整有效地进行了测试,应该大部分都可以避免吧。而思考、设计、测试又紧扣书中其他章节。
曾经和朋友讨论关于员工培训的事。如果给程序员做培训,我首选的材料就是这本《程序员修炼之道》。
LAMP程序员赵钟秋(belltoy)
http://blog.belltoy.nef/...
在大学的时候,编程是我的兴趣,也是当时我给自己定位的职业方向。
当我在图书馆看到这本《程序员修炼之道》的时候,直觉告诉我应该看看这本书,或许对我的成长有帮助。读完之后更加肯定了自己的直觉是对的。当时我虽然没有实际项目的开发经验,不能一时领悟其意,但我明白,这本书中总结的原则和方法对我来说是极为宝贵的,于是买了一本放在床头。
参加工作后,随着编程经验的积累,我越来越能体会到这本书中的观点。每次重读书中的章节,我都会有新的收获:再结合自己的每次经历,都能与之共鸣——这是对我影响最深的一本书,也是我向朋友和同事推荐次数最多的一本书。有趣的是,书前Kevin Ruland的评论说:这是我唯一不会出借的一本书。究竟是一本什么样的书会让大师如此爱不释手?
这本书所涉及的内容很广,涵盖了程序员成长过程中和软件开发过程中要注意的地方。从程序员的个体哲学到编码过程中的各个环节,再到团队的项目管理;从程序员要如何扩充知识,如何思考问题,如何利用有效的工具打造个人的工作环境,到项目启动之前如何建立一些基本准则,如何分析、设计、编写、测试、重构,如何实现自动化,甚至是项目团队中提高实效的原则。书中的内容全都来自经验的总结,倡导编程中正确的观念和良好的习惯,而这正是优秀的程序员必须拥有的良好素质。..
书中讲述的原则源于实践,高于实践,它们蕴涵着前辈们的智慧。随着知识的扩展、编程体验的增加,对这本书中的内容的理解也会愈加深刻。反过来,对前辈菁华的吸收,有助于我们提高编程水平,开发出更好的产品。
我深信这不是一本只要读一遍的书。这些原则看似简单,但细细品味一番,却是大哲大道,环环相扣,要理解透彻并不容易。例如,提示44告诉我们“不要靠巧合编程”,这道理看起来好像很简单,但我发现实际工作中还是很容易就犯这个错的。细想一下Bug列表中的问题,其中
大多数问题不正是由于作了不正确的假设,或者是想当然造成的吗?要是一开始就有了深思熟虑,经过了合理的设计,完整有效地进行了测试,应该大部分都可以避免吧。而思考、设计、测试又紧扣书中其他章节。
曾经和朋友讨论关于员工培训的事。如果给程序员做培训,我首选的材料就是这本《程序员修炼之道》。
LAMP程序员赵钟秋(belltoy)
http://blog.belltoy.nef/...
媒体评论回到顶部↑
爱不释手,是我第一次读完后的心境。完整经历了人生中第一个成功的、大的软件项目后,我有许多感慨。知道了不少东西怎样做对,怎样做不对,但是要一条条写下来,却不知道怎么总结。这本书说出了许多我想说的,但却不知道该怎么说的道理。
接下来的日子,我在公司做过好几次技术培训,课题都是以这本书中的某个或某几个观点,再结合自己的经历展开的。对于信任我的同学,我总是将它作为第一本列在给他们开的书单中。
这次,我又重读了一遍。原以为那些嚼烂了的东西,不会再有新味道,但是我错了。
——云风 网易互动娱乐有限公司 杭州研究中心总监
《程序员修炼之道》一直是公司新人的必备学习材料,此次重读,感受颇多,也颇能理解为何公司一直选用此书作为新人教材。这本书里虽只包含了很多看似粗浅朴素的道理,实则是若干经验的心血总结。比如谁都知道不要对自己家的破窗户置之不理,可实际中听到太多的妥协:这个代码已经这样了,只能继续在上面贴上丑陋的workaround,这其实是一种对责任的推卸和对未来的不负责。
——邹飞 趋势科技公司 资深工程师
接下来的日子,我在公司做过好几次技术培训,课题都是以这本书中的某个或某几个观点,再结合自己的经历展开的。对于信任我的同学,我总是将它作为第一本列在给他们开的书单中。
这次,我又重读了一遍。原以为那些嚼烂了的东西,不会再有新味道,但是我错了。
——云风 网易互动娱乐有限公司 杭州研究中心总监
《程序员修炼之道》一直是公司新人的必备学习材料,此次重读,感受颇多,也颇能理解为何公司一直选用此书作为新人教材。这本书里虽只包含了很多看似粗浅朴素的道理,实则是若干经验的心血总结。比如谁都知道不要对自己家的破窗户置之不理,可实际中听到太多的妥协:这个代码已经这样了,只能继续在上面贴上丑陋的workaround,这其实是一种对责任的推卸和对未来的不负责。
——邹飞 趋势科技公司 资深工程师
【插图】


点击看大图






加载中...