本書的贊譽
譯者序
序
前言
致謝
第一部分 設計模式和Ruby
第1章 使用設計模式創(chuàng)建更好的程序
1.1 四人組
1.2 模式的模式
1.2.1 把變和不變的事物分開
1.2.2 針對接口編程而不對實現編程
1.2.3 組合優(yōu)先于繼承
1.2.4 委托、委托、委托
1.2.5 你不會用到它
1.3.2 3種模式中的14種
1.4 Ruby中的設計模式
第2章 從Ruby起步
2.1 交互式Ruby
2.2 說hello world
2.3 變量
2.4 Fixnums和Bignums
2.5 浮點數
2.6 這里沒有原始類型
2.7 但是有時沒有對象
2.8 true、false和nil
2.9判定、判定
2.10 循環(huán)
2.11 更多關于字符串
2.12 符號
2.13 數組
2.14 散列
2.15 正則表達式
2.16 自己的類
2.17 獲取一個實例變量
2.18 對象問:我是誰
2.19 繼承、子類和超類
2.20 參數選項
2.21 模組
2.22 異常
2.23 線程
2.24 管理分散的源文件
2.25 本章回顧
第二部分 Ruby中的模式
第3章 使用模板方法變換算法
3.1 迎接現實中的挑戰(zhàn)
3.2 將不變的部分獨立出來
3.3 探究模板方法模式
3.4 鉤子方法
3.5 但是類型聲明都去哪里了
3.6 類型、安全和靈活性
3.7 單元測試并非可有可無
3.8 使用和濫用模板方法模式
3.9 模板方法模式的實際應用
3.10 本章回顧
第4章 使用策略替換算法
4.1 委托、委托、還是委托
4.2 在策略和環(huán)境中共享數據
4.3 再說鴨子類型
4.4 Proc和代碼塊
4.5 快速而隨性的策略對象
4.6 使用和濫用策略模式
4.7 策略模式的實際應用
4.8 本章回顧
第5章 通過觀察器保持協調
5.1 隨時待命
5.2 更好的隨時待命方法
5.3 提取可被觀察能力支持的代碼
5.4 使用代碼塊作為觀察器
5.5 觀察器模式的異體
5.6 使用和濫用觀察器模式
5.7 觀察器模式的實際應用
5.8 本章回顧
第6章 使用組合模式將各部分組成整體
第7章 通過迭代器遍歷集合
第8章 使用命令模式完成任務
第9章 使用適配器填補空隙
第10章 通過代理來到對象面前
第11章 使用裝飾器改善對象
第12章 使用單例確保僅有一個
第13章 使用工廠模式挑選
第14章 通過生產器簡化對象創(chuàng)建
第15章 使用解釋器組建系統
第三部分 Ruby的設計模式
第16章 采用域指定語言打開系統
第17章 使用元編程創(chuàng)建自定義對象
第18章 慣例優(yōu)于配置
第19章 總結
附錄