《敏捷軟件開發:原則模式與實踐》是綜合性、實用性的敏捷開發和極限編程方面的指南,講述了在預算和時間要求下軟件開發人員和項目經理如何使用敏捷開發完成項目:使用真實案例講解如何用極限編程來設計、測試、重構和結對編程;包含了極具價值的可重用的C++和Java源代碼;還重點講述了如何使用UML和設計模式解決面向客戶系統的問題。《敏捷軟件開發:原則模式與實踐》于2003年榮獲第13屆軟件開發圖書震撼大獎,適于用作高校計算機專業本科生、研究生和軟件學院的軟件工程和軟件開發相關課程的教材或參考書,也適于軟件開發和管理人員提高自身水平學習之用。
目錄
第Ⅰ部分 敏捷開發
第一章 敏捷實踐
1.1 敏捷聯盟
1.2 原則
1.3 結論
參考文獻
第二章 極限編程概述
2.1 極限編程實踐
2.2 結論
參考文獻
第三章 計劃
3.1 初始探索
3.2 發布計劃
3.3 迭代計劃
3.4 任務計劃
3.5 迭代
3.6 結論
參考文獻
第四章 測試
4.1 測試驅動的開發方法
4.2 驗收測試
4.3 結論
參考文獻
第五章 重構
5.1 素數產生程序一個簡單的重構示例
5.2 結論
參考文獻
第六章 一次編程實踐
6.1 保齡球比賽
6.2 結論
第Ⅱ部分 敏捷設計
第七章 什么是敏捷設計
7.1 軟件出了什么錯
7.2 設計的臭味——腐化軟件的氣味
7.3 “Copy”程序
7.4 保持盡可能好的設計
7.5 結論
參考文獻
第八章 單一責任原則(SRP)
8.1 單一職責原則(SRP)
8.2 結論
參考文獻
第九章 開放—封閉原則(OCP)
9.1 開放—封閉原則(OCP)
9.2 描述
9.3 關鍵是抽象
9.4 結論
參考文獻
第十章 Liskov替換原則(LSP)
10.1 Liskov替換原則(LSP)
10.2 一個違反LSP的簡單例子
10.3 正方形和矩形,更微妙的違規
10.4 一個實際的例子
10.5 用提取公共部分的方法代替繼承
10.6 啟發式規則和習慣用法
10.7 結論
參考文獻
第十一章 依賴倒置原則(DIP)
11.1 依賴倒置原則(DIP)
11.2 層次化
11.3 一個簡單的例子
11.4 熔爐示例
11.5 結論
參考文獻
第十二章 接口隔離原則(ISP)
12.1 接口污染
12.2 分離客戶就是分離接口
12.3 接口隔離原則(ISP)
12.4 類接口與對象接口
12.5 ATM用戶界面的例子
12.6 結論
參考文獻
第Ⅲ部分 薪水支付案例研究
第十三章 COMMAND模式和ACTIVE OBJECT模式
第十四章 TEMPLATE METHOD模式和STRATEGY模式:繼承與委托
第十五章 FACADE模式和MEDIATOR模式
第十六章 SINGLETON模式和MONOSTATE模式
第十七章 NULL OBJECT模式
第十八章 薪水支付案例研究:第一次迭代開始
第十九章 薪水支付案例研究:實現
第Ⅳ部分 打包薪水支付系統
第二十章 包的設計原則
第二十一章 FACTORY模式
第二十二章 薪水支付案例研究(第2部分)
第Ⅴ部分 氣象站案例研究
第二十三章 COMPOSITE模式
第二十四章 OBSERVER模式——回歸為模式
第二十五章 ABSTRACT SERVER模式、ADAPTER模式和BRIDGE模式
第二十六章 PROXY模式和STAIRWAY TO HEAVEN模式:管理第三方API
第二十七章 案例研究:氣象站
第Ⅵ部分 ETS案例研究
第二十八章 VISITOR模式
第二十九章 STATE模式
第三十章 ETS框架
附錄
附錄A UML表示法Ⅰ:CGI示例
附錄B UML表示法Ⅱ:統計多路復用器
附錄C 兩個公司的諷刺小品
附錄D 源代碼就是設計
索引