設計模式之禪, 2/e

設計模式之禪, 2/e

作者: 秦小波
出版社: 機械工業
出版在: 2014-01-01
ISBN-13: 9787111437871
ISBN-10: 711143787X
裝訂格式: 平裝
總頁數: 555 頁





內容描述


<書籍簡介>
《設計模式之禪(第2版)》由秦小波著,是設計模式領域公認的3本經典著作之一,「極具趣味,容易理解,但講解又極為嚴謹和透徹」是本書的寫作風格和方法的最大特點。第1版2010年出版,暢銷至今,廣受好評,是該領域的里程碑著作。深刻解讀6大設計原則和28種設計模式的準確定義、應用方法和最佳實踐,全方位比較各種同類模式之間的異同,詳細講解將不同的模式組合使用的方法。第2版在第1版的基礎上有兩方面的改進,一方面結合讀者的意見和建議對原有內容中的瑕疵進行了修正和完善,另一方面增加了4種新的設計模式,希望這一版能為廣大程序員們奉上一場更加完美的設計模式盛宴!
    《設計模式之禪(第2版)》共38章,分為五部分:第一部分(第1?6章),以一種全新的視角對面向對象程序設計的6大原則進行了深刻解讀,旨在讓讀者能更深刻且準確地理解這些原則,為後面的學習打下基礎;第二部分(第7?29章)通過大量生動的案例講解和分析了23種最常用的設計模式,並進行了擴展講解,通俗易懂,趣味性極強而又緊扣模式的核心;第三部分(第30?33章)對同類型和相關聯的模式進行了深入分析和比較,旨在闡明各種設計模式之間的差別以及它們的理想應用場景;第四部分(第34?36章)探討瞭如何在實際開發中將各種設計模式混合起來使用,以發揮設計模式的最大效用;第五部分(第37?38章)是本書的擴展篇,首先從實現的角度對MVC框架的原理進行了深入分析,然後講解了5種新的設計模式的原理、意圖和最佳實踐。本書最後附有一份精美的設計模式彩圖,可以裁剪,便於參考。

<目錄>
前言
第一部分  大旗不揮,誰敢衝鋒—6大設計原則全新解讀
  第1章  單一職責原則
    1.1我是「牛」類,我可以擔任多職嗎
    1.2絕殺技,打破你的傳統思維
    1.3我單純,所以我快樂
    1.4最佳實踐
  第2章  里氏替換原則
    2.1愛恨糾葛的父子關係
    2.2糾紛不斷,規則壓制
    2.3最佳實踐
  第3章  依賴倒置原則
    3.1依賴倒置原則的定義
    3.2言而無信,你太需要契約
    3.3依賴的三種寫法
    3.4最佳實踐
  第4章  接口隔離原則
    4.1接口隔離原則的定義
    4.2美女何其多,觀點各不同
    4.3保證接口的純潔性
    4.4最佳實踐
  第5章  迪米特法則
    5.1迪米特法則的定義
    5.2我的知識你知道得越少越好
    5.3最佳實踐
  第6章  開閉原則
    6.1開閉原則的定義
    6.2開閉原則的廬山真面目
    6.3為什麼要採用開閉原則
    6.4如何使用開閉原則
    6.5最佳實踐
第二部分  真刀實槍—23種設計模式完美演繹
  第7章  單例模式
    7.1我是皇帝我獨苗
    7.2單例模式的定義
    7.3單例模式的應用
    7.3.1單例模式的優點
    7.3.2單例模式的缺點
    7.3.3單例模式的使用場景
    7.3.4單例模式的註意事項
    7.4單例模式的擴展
    7.5最佳實踐
  第8章  工廠方法模式
    8.1女媧造人的故事
    8.2工廠方法模式的定義
    8.3工廠方法模式的應用
    8.3.1工廠方法模式的優點
    8.3.2工廠方法模式的使用場景
    8.4工廠方法模式的擴展
    8.5最佳實踐
  第9章  抽象工廠模式
    9.1女媧的失誤
    9.2抽象工廠模式的定義
    9.3抽象工廠模式的應用
    9.3.1抽象工廠模式的優點
    9.3.2抽象工廠模式的缺點
    9.3.3抽象工廠模式的使用場景
    9.3.4抽象工廠模式的註意事項
    9.4最佳實踐
  第10章  模板方法模式
    10.1輝煌工程—製造悍馬
    10.2模板方法模式的定義
    10.3模板方法模式的應用
    10.3.1模板方法模式的優點
    10.3.2模板方法模式的缺點
    10.3.3模板方法模式的使用場景
    10.4模板方法模式的擴展
    10.5最佳實踐
  第11章  建造者模式
    11.1變化是永恆的
    11.2建造者模式的定義
    11.3建造者模式的應用
    11.3.1建造者模式的優點
    11.3.2建造者模式的使用場景
    11.3.3建造者模式的註意事項
    11.4建造者模式的擴展
    11.5最佳實踐
  第12章  代理模式
    12.1我是遊戲至尊
    12.2代理模式的定義
    12.3代理模式的應用
    12.3.1代理模式的優點
    12.3.2代理模式的使用場景
    12.4代理模式的擴展
    12.4.1普通代理
    12.4.2強制代理
    12.4.3代理是有個性的
    12.4.4動態代理
    12.5最佳實踐
  第13章  原型模式
    13.1個性化電子賬單
    13.2原型模式的定義
    13.3原型模式的應用
    13.3.1原型模式的優點
    13.3.2原型模式的使用場景
    13.4原型模式的註意事項
    13.4.1構造函數不會被執行
    13.4.2淺拷貝和深拷貝
    13.4.3clone與final兩個冤家
    13.5最佳實踐
  第14章  中介者模式
    14.1進銷存管理是這個樣子的嗎
    14.2中介者模式的定義
    14.3中介者模式的應用
    14.3.1中介者模式的優點
    14.3.2中介者模式的缺點
    14.3.3中介者模式的使用場景
    14.4中介者模式的實際應用
    14.5最佳實踐
  第15章  命令模式
    15.1項目經理也難當
    15.2命令模式的定義
    15.3命令模式的應用
    15.3.1命令模式的優點
    15.3.2命令模式的缺點
    15.3.3命令模式的使用場景
    15.4命令模式的擴展
    15.4.1未講完的故事
    15.4.2反悔問題
    15.5最佳實踐
  第16章  責任鏈模式
    16.1古代婦女的枷鎖—「三從四德」
    16.2責任鏈模式的定義
    16.3責任鏈模式的應用
    16.3.1責任鏈模式的優點
    16.3.2責任鏈模式的缺點
    16.3.3責任鏈模式的註意事項
    16.4最佳實踐
  第17章  裝飾模式
    17.1罪惡的成績單
    17.2裝飾模式的定義
    17.3裝飾模式應用
    17.3.1裝飾模式的優點
    17.3.2裝飾模式的缺點
    17.3.3裝飾模式的使用場景
    17.4最佳實踐
  第18章  策略模式
    18.1劉備江東娶妻,趙雲他容易嗎
    18.2策略模式的定義
    18.3策略模式的應用
    18.3.1策略模式的優點
    18.3.2策略模式的缺點
    18.3.3策略模式的使用場景
    18.3.4策略模式的註意事項
    18.4策略模式的擴展
    18.5最佳實踐
  第19章  適配器模式
    19.1業務發展—上帝才能控制
    19.2適配器模式的定義
    19.3適配器模式的應用
    19.3.1適配器模式的優點
    19.3.2適配器模式的使用場景
    19.3.3適配器模式的註意事項
    19.4適配器模式的擴展
    19.5最佳實踐
  第20章  迭代器模式
    20.1整理項目信息—苦差事
    20.2迭代器模式的定義
    20.3迭代器模式的應用
    20.4最佳實踐
  第21章  組合模式
    21.1公司的人事架構是這樣的嗎
    21.2組合模式的定義
    21.3組合模式的應用
    21.3.1組合模式的優點
    21.3.2組合模式的缺點
    21.3.3組合模式的使用場景
    21.3.4組合模式的註意事項
    21.4組合模式的擴展
    21.4.1真實的組合模式
    21.4.2透明的組合模式
    21.4.3組合模式的遍歷
    21.5最佳實踐
  第22章  觀察者模式
    22.1韓非子身邊的?底是誰派來的
    22.2觀察者模式的定義
    22.3觀察者模式的應用
    22.3.1觀察者模式的優點
    22.3.2觀察者模式的缺點
    22.3.3觀察者模式的使用場景
    22.3.4觀察者模式的註意事項
    22.4觀察者模式的擴展
    22.4.1Java世界中的觀察者模式
    22.4.2項目中真實的觀察者模式
    22.4.3訂閱發布模型
    22.5最佳實踐
  第23章  門面模式
    23.1我要投遞信件
    23.2門面模式的定義
    23.3門面模式的應用
    23.3.1門面模式的優點
    23.3.2門面模式的缺點
    23.3.3門面模式的使用場景
    23.4門面模式的註意事項
    23.4.1一個子系統可以有多個門面
    23.4.2門面不參與子系統內的業務邏輯
    23.5最佳實踐
  第24章  備忘錄模式
    24.1如此追女孩子,你還不樂
    24.2備忘錄模式的定義
    24.3備忘錄模式的應用
    24.3.1備忘錄模式的使用場景
    24.3.2備忘錄模式的註意事項
    24.4備忘錄模式的擴展
    24.4.1clone方式的備忘錄
    24.4.2多狀態的備忘錄模式
    24.4.3多備份的備忘錄
    24.4.4封裝得更好一點
    24.5最佳實踐
  第25章  訪問者模式
    25.1員工的隱私何在
    25.2訪問者模式的定義
    25.3訪問者模式的應用
    25.3.1訪問者模式的優點
    25.3.2訪問者模式的缺點
    25.3.3訪問者模式的使用場景
    25.4訪問者模式的擴展
    25.4.1統計功能
    25.4.2多個訪問者
    25.4.3雙分派
    25.5最佳實踐
  第26章  狀態模式
    26.1城市的縱向發展功臣—電梯
    26.2狀態模式的定義
    26.3狀態模式的應用
    26.3.1狀態模式的優點
    26.3.2狀態模式的缺點
    26.3.3狀態模式的使用場景
    26.3.4狀態模式的註意事項
    26.4最佳實踐
  第27章  解釋器模式
    27.1四則運算你會嗎
    27.2解釋器模式的定義
    27.3解釋器模式的應用
    27.3.1解釋器模式的優點
    27.3.2解釋器模式的缺點
    27.3.3解釋器模式使用的場景
    27.3.4解釋器模式的註意事項
    27.4最佳實踐
  第28章  享元模式
    28.1內存溢出,司空見慣
    28.2享元模式的定義
    28.3享元模式的應用
    28.3.1享元模式的優點和缺點
    28.3.2享元模式的使用場景
    28.4享元模式的擴展
    28.4.1線程安全的問題
    28.4.2性能平衡
    28.5最佳實踐
  第29章  橋樑模式
    29.1我有一個夢想
    29.2橋樑模式的定義
    29.3橋樑模式的應用
    29.3.1橋樑模式的優點
    29.3.2橋樑模式的使用場景
    29.3.3橋樑模式的註意事項
    29.4最佳實踐
第三部分  誰的地盤誰做主—設計模式PK
  第30章  創建類模式大PK
    30.1工廠方法模式VS建造者模式
    30.1.1按工廠方法建造超人
    30.1.2按建造者模式建造超人
    30.1.3最佳實踐
    30.2抽象工廠模式VS建造者模式
    30.2.1按抽象工廠模式生產車輛
    30.2.2按建造者模式生產車輛
    30.2.3最佳實踐
  第31章  結構類模式大PK
    31.1代理模式VS裝飾模式
    31.1.1代理模式
    31.1.2裝飾模式
    31.1.3最佳實踐
    31.2裝飾模式VS適配器模式
    31.2.1用裝飾模式描述醜小鴨
    31.2.2用適配器模式實現醜小鴨
    31.2.3最佳實踐
  第32章  行為類模式大PK
    32.1命令模式VS策略模式
    32.1.1策略模式實現壓縮演算法
    32.1.2命令模式實現壓縮演算法
    32.1.3小結
    32.2策略模式VS狀態模式
    32.2.1策略模式實現人生
    32.2.2狀態模式實現人生
    32.2.3小結
    32.3觀察者模式VS責任鏈模式
    32.3.1責任鏈模式實現DNS解析過程
    32.3.2觸發鏈模式實現DNS解析過程2
    32.3.3小結
  第33章  跨戰區PK
    33.1策略模式VS橋樑模式
    33.1.1策略模式實現郵件發送
    33.1.2橋樑模式實現郵件發送
    33.1.3最佳實踐
    33.2門面模式VS中介者模式
    33.2.1中介者模式實現工資計算
    33.2.2門面模式實現工資計算
    33.2.3最佳實踐
    33.3包裝模式群PK
    33.3.1代理模式
    33.3.2裝飾模式
    33.3.3適配器模式
    33.3.4橋樑模式
    33.3.5最佳實踐
第四部分  完美世界—設計模式混編
  第34章  命令模式+責任鏈模式
    34.1搬移UNIX的命令
    34.2混編小結
  第35章  工廠方法模式+策略模式
    35.1迷你版的交易系統
    35.2混編小結
  第36章  觀察者模式+中介者模式
    36.1事件觸發器的開發
    36.2混編小結
第五部分  擴展篇
  第37章  MVC框架
    37.1MVC框架的實現
    37.1.1MVC的系統架構
    37.1.2模型管理器
    37.1.3值棧
    37.1.4視圖管理器
    37.1.5工具類
    37.2最佳實踐
  第38章  新模式
    38.1規格模式
    38.1.1規格模式的實現
    38.1.2最佳實踐
    38.2對象池模式
    38.2.1正確的池化
    38.2.2對象池模式的意圖
    38.2.3最佳實踐
    38.3僱工模式
    38.3.1僱工合作
    38.3.2僱工模式的意圖
    38.3.3最佳實踐
    38.4黑板模式
    38.4.1黑板模式的意圖
    38.4.2黑板模式的實現方法
    38.5空對象模式
    38.5.1空對象模式的例子
    38.5.2最佳實踐
附錄 23種設計模式彩圖




相關書籍

PMP Exam Challenge!, 6/e (Paperback)

作者 J. LeRoy Ward Ginger Levin

2014-01-01

Evaluating Software Architectures: Methods and Case Studies (Hardcover)

作者 Paul Clements Rick Kazman Mark Klein

2014-01-01

Continuous Architecture: Sustainable Architecture in an Agile and Cloud-Centric World (Paperback)

作者 Murat Erder Pierre Pureur

2014-01-01