譯者序
序
前言
第1章 簡介
為什么要寫一本關于程序員生產力的書?
本書包含哪些內容?
如何讀此書?
第一部分 機制
第2章 加速
啟動面板
加速器
宏
小結
第3章 專注
排除干擾
搜索優(yōu)于導航
找出難找的目標
使用有根視圖
設好“粘性屬性”
使用基于項目的快捷方式
使用多顯示器
用虛擬桌面拆分工作空間
小結
第4章 自動化
不要重新發(fā)明輪子
建立本地緩存
自動訪問網站
與RSS源交互
在構建之外使用Ant
用Rake執(zhí)行常見任務
用Selenium瀏覽網頁
用bash統(tǒng)計異常數
用Windows Power Shell替代批處理文件
用Mac OS X的Automator來刪除過時的下載文件
馴服Subversion命令行
用Ruby編寫SQL拆分工具
我應該把它自動化嗎?
別給牦牛剪毛
小結
第5章 規(guī)范性
DRY 版本控制
使用標準的構建服務器
間接機制
利用虛擬平臺
DRY 阻抗失配
DRY 文檔
小結
第二部分 實踐
第6章 測試驅動設計
不斷演化的測試
代碼覆蓋率
第7章 靜態(tài)分析
字節(jié)碼分析
源碼分析
用 Panopticode生成統(tǒng)計數據
動態(tài)語言的分析
第8章 當個好公民
破壞封裝
構造函數
靜態(tài)方法
犯罪行為
第9章 YAGNI
第10章 古代哲人
亞里斯多德的“事物的本質和附屬性質”理論
奧卡姆剃刀原理
笛米特法則
“古老的”軟件學說
第11章 質疑權威
憤怒的猴子
連貫接口
反目標(Anti-Objects)
第12章 元編程
Java和反射
用Groovy測試Java
編寫連貫接口
元編程的歸處
第13章 組合方法和SLAP
組合方法實踐
SLAP
第14章 多語言編程
歷史與現狀
路在何方?
Ola的金字塔
第15章 尋找完美工具
尋找完美編輯器
編輯器參考列表
為你的工作選擇正確的工具
丟棄錯誤的工具
第16章 尾聲:繼續(xù)對話
附錄 Building Blocks