万本电子书0元读

万本电子书0元读

顶部广告

重构与模式(修订版)电子书

  讲述重构与设计模式两大热门技术,将两者**结合,极具实战价值   业界专家学习和教授重构与模式亲身经历的结晶   《设计模式》作者Erich Gamma、Ralph Johnson和《重构》作者Martin Fowler联合推荐

售       价:¥

纸质售价:¥41.20购买纸书

217人正在读 | 1人评论 6.2

作       者:[美]JoshuaKerievsky著

出  版  社:人民邮电出版社

出版时间:2013-01-01

字       数:18.9万

所属分类: 科技 > 计算机/网络 > 软件系统

温馨提示:数字商品不支持退换货,不提供源文件,不支持导出打印

  • 读书简介
  • 目录
  • 累计评论(1条)
  • 读书简介
  • 目录
  • 累计评论(1条)
《重构与模式(修订版)》创性地深揭示了重构与模式这两种软件发关键技术之间的联系,说明了通过重构实现模式改善既有的设计,往往优于在新的设计早期使用模式。《重构与模式(修订版)》不仅展示了一种应用模式和重构的创新方法,而且有助于读者透过实战深理解重构和模式。书中讲述了27种重构方式。 《重构与模式(修订版)》适于面向对象软件发人员阅读,也可作为高等学校计算机专业、软件工程专业师生的参考读物。<br/>【推荐语】<br/>讲述重构与设计模式两大热门技术,将两者**结合,极具实战价值 业界专家学习和教授重构与模式亲身经历的结晶 《设计模式》作者Erich Gamma、Ralph Johnson和《重构》作者Martin Fowler联合推荐<br/>【作者】<br/>Kerievsky*人气的年轻一代软件发专家之一,极限编程先驱、敏捷项目管理的思想领袖、敏捷eLearning的改革者。软件发公司IndustrialLogic的创始人。他曾为许多专业杂志撰稿,并多次在*技术会议上担任讲师,并撰写了大量的论文。除本书外,他还参与撰写了ExtremeProgramming Explored和Extreme Programming Perspectives两本书。<br/>
目录展开

其他

对本书的赞誉

译者序

Ralph Johnson序

Martin Fowler序

前言

第1章 本书的写作缘由

1.1 过度设计

1.2 模式万灵丹

1.3 设计不足

1.4 测试驱动开发和持续重构

1.5 重构与模式

1.6 演进式设计

第2章 重构

2.1 何谓重构

2.2 重构的动机

2.3 众目睽睽

2.4 可读性好的代码

2.5 保持清晰

2.6 循序渐进

2.7 设计欠账

2.8 演变出新的架构

2.9 复合重构与测试驱动的重构

2.10 复合重构的优点

2.11 重构工具

第3章 模式

3.1 何谓模式

3.2 模式痴迷

3.3 实现模式的方式不止一种

3.4 通过重构实现、趋向和去除模式

3.5 模式是否会使代码更加复杂

3.6 模式知识

3.7 使用模式的预先设计

第4章 代码坏味

4.1 重复代码(Duplicated Code)

4.2 过长函数(Long Method)

4.3 条件逻辑太复杂(Conditional Complexity)

4.4 基本类型偏执(Primitive Obsession)

4.5 不恰当的暴露(Indecent Exposure)[4]

4.6 解决方案蔓延(Solution Sprawl)

4.7 异曲同工的类(Alternative Classes with Different Interfaces)

4.8 冗赘类(Lazy Class)

4.9 过大的类(Large Class)

4.10 分支语句(Switch Statement)

4.11 组合爆炸(Combinatorial Explosion)

4.12 怪异解决方案(Oddball Solution)

第5章 模式导向的重构目录

5.1 重构的格式

5.2 本目录中引用的项目

5.2.1 XML Builder

5.2.2 HTML Parser

5.2.3 贷款风险计算程序

5.3 起点

5.4 学习顺序

第6章 创建

6.1 用Creation Method替换构造函数

6.1.1 动机

6.1.2 做法

6.1.3 示例

6.1.4 变体

6.2 将创建知识搬移到Factory

6.2.1 动机

6.2.2 做法

6.2.3 示例

6.3 用Factory封装类

6.3.1 动机

6.3.2 做法

6.3.3 示例

6.3.4 变体

6.4 用Factory Method引入多态创建

6.4.1 动机

6.4.2 做法

6.4.3 示例

6.5 用Builder封装Composite

6.5.1 做法

6.5.2 示例

6.5.3 变体

6.6 内联Singleton

6.6.1 动机

6.6.2 做法

6.6.3 示例

第7章 简化

7.1 组合方法

7.1.1 动机

7.1.2 做法

7.1.3 示例

7.2 用Strategy替换条件逻辑

7.2.1 动机

7.2.2 做法

7.2.3 示例

7.3 将装饰功能搬移到Decorator

7.3.1 动机

7.3.2 做法

7.3.3 示例

7.4 用State替换状态改变条件语句

7.4.1 动机

7.4.2 做法

7.4.3 示例

7.5 用Composite替换隐含树

7.5.1 动机

7.5.2 做法

7.5.3 示例

7.6 用Command替换条件调度程序

7.6.1 动机

7.6.2 做法

7.6.3 示例

第8章 泛化

8.1 形成Template Method

8.1.1 动机

8.1.2 做法

8.1.3 示例

8.2 提取Composite

8.2.1 动机

8.2.2 做法

8.2.3 示例

8.3 用Composite替换一/多之分

8.3.1 动机

8.3.2 做法

8.3.3 示例

8.4 用Observer替换硬编码的通知

8.4.1 动机

8.4.2 做法

8.4.3 示例

8.5 通过Adapter统一接口

8.5.1 动机

8.5.2 做法

8.5.3 示例

8.6 提取Adapter

8.6.1 动机

8.6.2 做法

8.6.3 示例

8.6.4 变体

8.7 用Interpreter替换隐式语言

8.7.1 动机

8.7.2 做法

8.7.3 示例

第9章 保护

9.1 用类替换类型代码

9.1.1 动机

9.1.2 做法

9.1.3 示例

9.2 用Singleton限制实例化

9.2.1 动机

9.2.2 做法

9.2.3 示例

9.3 引入Null Object

9.3.1 动机

9.3.2 做法

9.3.3 示例

第10章 聚集操作

10.1 将聚集操作搬移到Collecting Parameter

10.1.1 动机

10.1.2 做法

10.1.3 示例

10.2 将聚集操作搬移到Visitor

10.2.1 动机

10.2.2 做法

10.2.3 示例

第11章 实用重构

11.1 链构造函数

11.1.1 动机

11.1.2 做法

11.1.3 示例

11.2 统一接口

11.2.1 动机

11.2.2 做法

11.2.3 示例

11.3 提取参数

11.3.1 动机

11.3.2 做法

11.3.3 示例

参考文献

索引

累计评论(1条) 1个书友正在讨论这本书 发表评论

发表评论

发表评论,分享你的想法吧!

买过这本书的人还买过

读了这本书的人还在读

回顶部