本书的赞誉
译者序
序
前言
致谢
第一部分 设计模式和Ruby
第1章 使用设计模式创建更好的程序
1.1 四人组
1.2 模式的模式
1.2.1 把变和不变的事物分开
1.2.2 针对接口编程而不对实现编程
1.2.3 组合优先于继承
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 循环
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 迎接现实中的挑战
3.2 将不变的部分独立出来
3.3 探究模板方法模式
3.4 钩子方法
3.5 但是类型声明都去哪里了
3.6 类型、安全和灵活性
3.7 单元测试并非可有可无
3.8 使用和滥用模板方法模式
3.9 模板方法模式的实际应用
3.10 本章回顾
第4章 使用策略替换算法
4.1 委托、委托、还是委托
4.2 在策略和环境中共享数据
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章 通过生产器简化对象创建
第15章 使用解释器组建系统
第三部分 Ruby的设计模式
第16章 采用域指定语言打开系统
第17章 使用元编程创建自定义对象
第18章 惯例优于配置
第19章 总结
附录