卓有成效的程序员
分類: 图书,计算机/网络,程序设计,其他,
作者: (美)弗德著,ThoughtWorks中国公司译
出 版 社: 机械工业出版社
出版时间: 2009-3-1字数:版次: 1页数: 215印刷时间:开本: 16开印次:纸张:I S B N : 9787111264064包装: 平装编辑推荐
卓有成效的程序员:任何打算以开发软件为生的人都需要一种经过实践检验的方式,来使自己的工作更好、更快、更高效。本书在“如何节省时间”方面提供了宝贵的建议和实用的工具,不论你使用什么平台都能立即从中获益。作为大师级的开发者,Neal Ford提出了大量有助于提高生产率的建议:如何更明智地工作,如何排除干扰,如何充分利用计算机,以及如何避免重复等。此外,他还详细介绍了很多有价值的实践经验,帮你回避常见的陷阱,改善代码,从而为团队创造更大的价值。
你将会学到:在编写代码之前先写测试;有效管理对象的生命周期;只构建当前一定需要的,不构建将来可能需要的;在软件开发中运用古老的哲学;质疑权威,而非盲从标准;借助元编程,让困难的事变容易,让不可能成为可能;确保同一方法中的所有代码具有同样的抽象层面;选择正确的编辑器,打造最合适的工具组合。
这些不是空谈的理论,而是Ford丰富经验的精华。不论你是刚入行的新手还是从业多年的专家,本书中这些简单而直白的原则都将对你的工作和职业生涯有所助益。
内容简介
本书讲述如何在开发软件的过程中变得更加高效。同时,本书的讲述将会跨语言和操作系统:很多技巧的讲述都会伴随多种程序语言的例子,并且会跨越三种主要的操作系统,Windows(多个版本),Mac OS X以及 *-nix(Unix或者Linux)。
本书讨论的是程序员个体的生产力,而不是团队的生产力问题,所以它不会涉及方法论(好吧,可能总会在这里或那里谈论到一些,但肯定不会深入讨论)。同时,本书也不会讨论生产力对整个团队的影响。我的使命,是让作为个体的程序员通过掌握恰当的工具和思想变得更加高效。
作者简介
Neal Ford是ThoughtWorks的软件架构师。他曾在美国和其他国家进行现场授课,客户包括军方和很多《财富》500强的企业。
目录
译者序
序
前言
第1章 简介
为什么要写一本关于程序员生产力的书?
本书包含哪些内容?
如何读此书?
第一部分 机制
第2章 加速
启动面板
加速器
宏
小结
第3章 专注
排除干扰
搜索优于导航
找出难找的目标
使用有根视图
设好“粘性属性”
使用基于项目的快捷方式
使用多显示器
用虚拟桌面拆分工作空间
小结
第4章 自动化
不要重新发明轮子
建立本地缓存
自动访问网站
与RSS源交互
在构建之外使用Ant
用Rake执行常见任务
用Selenium浏览网页
用bash统计异常数
用Windows Power Shell替代批处理文件
用Mac OS X的Automator来删除过时的下载文件
驯服Subversion命令行
用Ruby编写SQL拆分工具
我应该把它自动化吗?
别给牦牛剪毛
小结
第5章 规范性
DRY 版本控制
使用标准的构建服务器
间接机制
利用虚拟平台
DRY 阻抗失配
DRY 文档
小结
第二部分 实践
第6章 测试驱动设计
不断演化的测试
代码覆盖率
第7章 静态分析
字节码分析
源码分析
用 Panopticode生成统计数据
动态语言的分析
第8章 当个好公民
破坏封装
构造函数
静态方法
犯罪行为
第9章 YAGNI
第10章 古代哲人
亚里斯多德的“事物的本质和附属性质”理论
奥卡姆剃刀原理
笛米特法则
“古老的”软件学说
第11章 质疑权威
愤怒的猴子
连贯接口
反目标(Anti-Objects)
第12章 元编程
Java和反射
用Groovy测试Java
编写连贯接口
元编程的归处
第13章 组合方法和SLAP
组合方法实践
SLAP
第14章 多语言编程
历史与现状
路在何方?
Ola的金字塔
第15章 寻找完美工具
寻找完美编辑器
编辑器参考列表
为你的工作选择正确的工具
丢弃错误的工具
第16章 尾声:继续对话
附录 Building Blocks
媒体评论
对于程序员,过去我们一直习惯于用单纯的技术水平,也就是实现程序功能的能力来衡量。然而这个时代其实已经过去了。虽然技术仍然很重要,但企业越来越多地认识到,对于程序员更全面的衡量标准,应当是生产率。只有能够以较高的效率完成对项目、对企业有价值的工作,才是团队和组织所真正需要的人才。反之,技术好,但不能真正促进整体价值,甚至其反作用,这样的“技术牛人”已经没有生存空间了。 —— 孟岩 《程序员》杂志总编“卓有成效是可以学习的“,让编程工作变得卓有成效也是可以学习的,方法就在这里……我会要求我们团队的所有程序员认真研读这本书。—— 黄晶 校内网高级技术总监如果你想做一个真正的懒人,就请继续读完这本书,因为这本书是天堂;如果你不想做一个真正的懒人,那也可以读完这本书,因为它至少可以教会你掌握一些小窍门耍酷,而且要比从前那种一遍遍敲ls或者dir滚屏更加专业。—— 李剑 InfoQ中文站敏捷社区首席编辑通俗不掩睿智,腕从何妨心悟——用这一句话可概括我喜欢本书的原因。—— 温昱 资深咨询顾问《软件架构设计》作者同样的工作,如果你不能持续提高自己的价值,恐怕迟早会沦为公司的鸡肋。赢得竞争,就是让自己比别人更有效率!好习惯决定高效率,同时也希望《卓有成效的程序员》能够让你的代码走正确的路……Neal Ford的这本书中有这样的一句话:“我的使命,是让作为个体的程序员通过掌握恰当的工具和思想变得更加高效。”这本书倾注了ThoughtWorks公司精英们的心血,他们把自己的宝贵经验都分享了出来,那些工具和方法,定会让你受益匪浅。熊节,这位优秀的咨询师,他犀利的文字也为这本书凭添了几分独特,让人爱不释手。—— 胡铭娅 IT168技术频道资深编辑有些知识,你可能需要工作学习体验很久才能掌握,而本书作者Neal Ford已经直接把这些经验方法告诉你了……在熊节的翻译下,Neal Ford的书读起来到也比较对味,很是流畅。—— 谢华亮 CSDN博客专家,Tencent工程师一直以来,我都未曾在书店找到过一本关于代码和工程以外的,实战类的通用技巧性的书籍……如果你想在效率的竞赛中上百尺竿头更进一步,那这本书就是你需要的。—— 乔坦 .NET程序员程序员总有学不完的东西,许多看过我写的“程序员的十层楼”的人觉得自己仍然是“菜鸟”。同样,当我看到Neal的这本书时,发现自己十几年的程序员生涯仍然是一个低效的程序员,书中介绍的许多提高效率的工具和方法以前没有用过或没有用好。要是在“菜鸟”或“大虾”阶段就能看到这样一本好书多好啊!不仅能及时掌握各种提高效率的工具和方法,更重要的是变成“牛人”或“大牛”后,它可以为设计高效的软件提供非常好的借鉴。” —— 周伟明 多核编程专家
书摘插图
这本书的中文名字叫做《卓有成效的程序员》,个人觉得单独针对“程序员”可能还有点窄,其实本书的大部分内容对所有技术人员也是适用的。
但愿看了这本书之后,能有更多的技术人员真正的行动起来,利用这本书提升自己,也去积极影响他人,形成更良性的互动,不要让“持续改进”成为一句空话。另外,必须要补充的是,如果技术人员持续从事低效率的工作,极有可能逐渐厌烦技术,疏远技术,乃至对技术绝望,而一个高效的技术人才能从技术中获得真正的快乐。
冯大辉 支付宝 框架师
http://dbanotes.net