Robert C.Martin是Object Mentor公司的總裁。Martin和他的軟件咨詢隊伍使用面向對象設計、模式、UML、敏捷方法學和極限編程,在世界各地都有他們的客戶。他還是好幾本暢銷書的作者。他還是1996-1999年《C Report》雜志的總編,并多次在國際會議和展覽中發表富有特色的演講。
第Ⅰ部分 敏捷開發
及時章 敏捷實踐
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 源代碼就是設計
索引
7.2 設計的臭味——腐化軟件的氣味
當軟件出現下面任何一種氣味時,就表明軟件正在腐化。
僵化性(Rigidity):很難對系統進行改動,因為每個改動都會迫使許多對系統其他部分的其他改動。
脆弱性(Fragility):對系統的改動會導致系統中和改動的地方在概念上無關的許多地方出現問題。
牢固性(Immobility):很難解開系統的糾結,使之成為一些可在其他系統中重用的組件。
粘滯性(Viscosity):做正確的事情比做錯誤的事情要困難。
不必要的復雜性(Needless Complexity):設計中包含有不具任何直接好處的基礎結構。
不必要的重復(Needless Repetition):設計中包含有重復的結構,而該重復的結構本可以使用單一的抽象進行統
很好的描述了敏捷開發,適合愿意了解敏捷開發的人閱讀
北京同學推薦的書,覺得還不錯的。專業書籍,經典
學習編程必讀之書. 太經典了, 就不用再多說什么了.
公司實施敏捷開發快三年多了,結合實際項目看這本書,感覺收獲很大
內容不錯,性價比高,可以對敏捷開發有較好的理解
對大家了解敏捷的初衷起到很大幫助,但是敏捷近些年也出現太多分支,不管怎么樣這本書還是基礎之作。
本次因沒有紙箱在外邊保護書籍,僅有紙袋,有的書潮濕了,想換又嫌麻煩。真的很不開心。
很不錯的書,適合對軟件設計模式,uml,軟件重構,測試等知識有一定基礎,但經驗較少的人學習。對于面向對象的基礎原則的解釋深入潛淺出,非常透徹。遠非很多國內的照抄概念的騙錢書可比。非常推薦!
這本書最先是一個資深的開發同事推薦的,借著看完了,講解透徹、簡單易懂,不失為一本開發人員常備的書籍,書中的一些原則思想靈活多變,多看看,能極大提高自己的能力,因為覺得真不錯,所以干脆買了一本。
包裝不錯,紙質也挺好,就是系統有點坑,顯示的電話居然是空號,物流也真坑,到了兩天才配送,有快遞柜不放,直接扔門口,也沒電話說一聲,別人拿走了都不知道。。。
本書對敏捷開發和設計模式有比較不錯的講解,其中對敏捷開發講的還算詳細,但后來對各個設計模式的講解只是一帶而過的感覺,學習設計模式的初學者推薦"大話設計模式"
一本把設計模式、敏捷開發、面向對象很好融合在一起的好書,建議有基礎再去看這本書,要是深刻理解書中內容,需要相關的項目經驗。
這本書真的是太好了,更好的翻譯也很不錯,很難得的國內游這么強的翻譯了。大師的作品確實經典,對面向對象的理解會更加深刻。把平時的實現上升到理論的高度,然后根據對理論的深入的立即,去指導實踐,我相信你的編程能力會飛速發展。
值得多次閱讀的書籍,書中許多實例與開發模式相結合,能夠在日常工作中得到很好的應用。另外本書推崇的迭代開發,少量多次的提交,以及重視客戶反饋都是具有建設性意見。目前我所在公司正在推廣迭代開發模式,所以重讀此書,收獲不少。
敏捷軟件開發——原則、模式與實踐捷實踐第二章極限編程概述第R三章計劃第四章測試第五章重構第六章一次編程實踐第Ⅱ部分敏捷設計第七章什6么是程方面
幾年前我就想買一本關于軟件工程的書,可是書店里的書魚目混雜讓人眼花潦亂,尢其對于初學者來說更是難分精劣,所以也上過很多回當啊,一般的書千篇一律,基本上就是copy真不知道寫書者的腦子里邊除了金錢還有沒有別的東西了。后來總結出了一條買書的秘籍就是看到一本主你心動的書時,先不要沖動哦,先網上查查關于該書的評價,網友的評價都是純潔的啊,,比如這本書絕對是一本好書,對于軟件開發人員絕對是超值的..剛拿到書時直是有相見恨晚的感覺,希望業界大師們不要吝惜筆墨多多出些經典,造福軟件行業...