卓有成效的程序员
ThoughtWorks中国公司 译
出版时间:2009年03月
页数:215
卓有成效的程序员 
任何打算以开发软件为生的人都需要一种经过实践检验的方式,来使自己的工作更好、更快、更高效。本书在“如何节省时间”方面提供了宝贵的建议和实用的工具,不论你使用什么平台都能立即从中获益。作为大师级的开发者,Neal Ford提出了大量有助于提高生产率的建议:如何更明智地工作,如何排除干扰,如何充分利用计算机,以及如何避免重复等。此外,他还详细介绍了很多有价值的实践经验,帮你回避常见的陷阱,改善代码,从而为团队创造更大的价值。
你将会学到:
在编写代码之前先写测试。
有效管理对象的生命周期。
只构建当前一定需要的,不构建将来可能需要的。
在软件开发中运用古老的哲学。
质疑权威,而非盲从标准。
借助元编程,让困难的事变容易,让不可能成为可能。
确保同一方法中的所有代码具有同样的抽象层面。
选择正确的编辑器,打造最合适的工具组合。
这些不是空谈的理论,而是Ford丰富经验的精华。不论你是刚入行的新手还是从业多年的专家,本书中这些简单而直白的原则都将对你的工作和职业生涯有所助益。
Neal Ford是ThoughtWorks的软件架构师。他曾在美国和其他国家进行现场授课,客户包括军方和很多《财富》500强的企业。
ThoughtWorks是一家全球IT咨询公司。该公司交付客户定制应用软件,提供注重实效的咨询服务,为企业开发软件,帮助企业敏捷开发。
- 序言	
 
- 前言	
 
- 第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章 质疑权威	
 
- 愤怒的猴子	
 
- 连贯接口	
 
- 反目标	
 
- 第12章 元编程	
 
- Java和反射	
 
- 用Groovy测试Java	
 
- 编写连贯接口	
 
- 元编程的归处	
 
- 第13章 组合方法和SLAP	
 
-  组合方法实践	
 
- SLAP	
 
- 第14章 多语言编程	
 
- 历史与现状	
 
- 路在何方	
 
- Ola的金字塔	
 
- 第15章 寻找完美工具	
 
- 寻找完美编辑器	
 
- 编辑器参考列表	
 
- 选择正确的工具 	
 
- 丢弃错误的工具	
 
- 第16章 结束语:继续对话	
 
- 附录 构建块	
 
 
 
书名:卓有成效的程序员
译者:ThoughtWorks中国公司 译
国内出版社:机械工业出版社
出版时间:2009年03月
页数:215
书号:978-7-111-26406-4
原版书出版商:O'Reilly Media
 
 
Neal Ford
 
Neal Ford是Thoughtworks公司的总监、软件架构师和meme wrangler。