重构与模式

重构与模式 pdf epub mobi txt 电子书 下载 2025

出版者:人民邮电出版社
作者:Joshua Kerievsky
出品人:
页数:295
译者:杨光
出版时间:2013-1
价格:55.00元
装帧:平装
isbn号码:9787115297259
丛书系列:软件开发方法学精选系列
图书标签:
  • 设计模式
  • 重构
  • 软件工程
  • 编程
  • 计算机
  • 程序设计
  • 软件开发
  • 敏捷开发
  • 重构
  • 设计模式
  • 软件工程
  • 架构设计
  • 代码优化
  • 面向对象
  • 系统设计
  • 开发实践
  • 编程思想
  • 模式应用
想要找书就要到 图书目录大全
立刻按 ctrl+D收藏本页
你会得到大惊喜!!

具体描述

《重构与模式(修订版)》开创性地深入揭示了重构与模式这两种软件开发关键技术之间的联系,说明了通过重构实现模式改善既有的设计,往往优于在新的设计早期使用模式。《重构与模式(修订版)》不仅展示了一种应用模式和重构的创新方法,而且有助于读者透过实战深入理解重构和模式。书中讲述了27种重构方式。

作者简介

目录信息

第1章 本书的写作缘由 1
1.1 过度设计 1
1.2 模式万灵丹 2
1.3 设计不足 2
1.4 测试驱动开发和持续重构 3
1.5 重构与模式 5
1.6 演进式设计 6
第2章 重构 7
2.1 何谓重构 7
2.2 重构的动机 8
2.3 众目睽睽 9
2.4 可读性好的代码 10
2.5 保持清晰 11
2.6 循序渐进 11
2.7 设计欠账 12
2.8 演变出新的架构 13
2.9 复合重构与测试驱动的重构 13
2.10 复合重构的优点 15
2.11 重构工具 15
第3章 模式 17
3.1 何谓模式 17
3.2 模式痴迷 18
3.3 实现模式的方式不止一种 20
3.4 通过重构实现、趋向和去除模式 22
3.5 模式是否会使代码更加复杂 24
3.6 模式知识 25
3.7 使用模式的预先设计 26
第4章 代码坏味 28
4.1 重复代码(Duplicated Code) 30
4.2 过长函数(Long Method) 30
4.3 条件逻辑太复杂(Conditional Complexity) 31
4.4 基本类型偏执(Primitive Obsession) 32
4.5 不恰当的暴露(Indecent Exposure) 32
4.6 解决方案蔓延(Solution Sprawl) 33
4.7 异曲同工的类(Alternative Classes with Different Interfaces) 33
4.8 冗赘类(Lazy Class) 33
4.9 过大的类(Large Class) 33
4.10 分支语句(Switch Statement) 34
4.11 组合爆炸(Combinatorial Explosion) 34
4.12 怪异解决方案(Oddball Solution) 34
第5章 模式导向的重构目录 36
5.1 重构的格式 36
5.2 本目录中引用的项目 37
5.2.1 XML Builder 38
5.2.2 HTML Parser 38
5.2.3 贷款风险计算程序 39
5.3 起点 39
5.4 学习顺序 39
第6章 创建 41
6.1 用Creation Method替换构造函数 43
6.1.1 动机 43
6.1.2 做法 45
6.1.3 示例 45
6.1.4 变体 49
6.2 将创建知识搬移到Factory 51
6.2.1 动机 51
6.2.2 做法 54
6.2.3 示例 55
6.3 用Factory封装类 60
6.3.1 动机 60
6.3.2 做法 61
6.3.3 示例 62
6.3.4 变体 65
6.4 用Factory Method引入多态创建 67
6.4.1 动机 67
6.4.2 做法 68
6.4.3 示例 70
6.5 用Builder封装Composite 74
6.5.1 做法 76
6.5.2 示例 77
6.5.3 变体 87
6.6 内联Singleton 90
6.6.1 动机 90
6.6.2 做法 92
6.6.3 示例 93
第7章 简化 96
7.1 组合方法 97
7.1.1 动机 97
7.1.2 做法 99
7.1.3 示例 99
7.2 用Strategy替换条件逻辑 102
7.2.1 动机 102
7.2.2 做法 104
7.2.3 示例 105
7.3 将装饰功能搬移到Decorator 115
7.3.1 动机 115
7.3.2 做法 118
7.3.3 示例 119
7.4 用State替换状态改变条件语句 133
7.4.1 动机 133
7.4.2 做法 134
7.4.3 示例 135
7.5 用Composite替换隐含树 143
7.5.1 动机 143
7.5.2 做法 146
7.5.3 示例 147
7.6 用Command替换条件调度程序 155
7.6.1 动机 155
7.6.2 做法 157
7.6.3 示例 158
第8章 泛化 164
8.1 形成Template Method 165
8.1.1 动机 166
8.1.2 做法 167
8.1.3 示例 167
8.2 提取Composite 172
8.2.1 动机 172
8.2.2 做法 173
8.2.3 示例 174
8.3 用Composite替换一/多之分 180
8.3.1 动机 180
8.3.2 做法 182
8.3.3 示例 183
8.4 用Observer替换硬编码的通知 190
8.4.1 动机 190
8.4.2 做法 191
8.4.3 示例 192
8.5 通过Adapter统一接口 199
8.5.1 动机 199
8.5.2 做法 200
8.5.3 示例 201
8.6 提取Adapter 208
8.6.1 动机 208
8.6.2 做法 210
8.6.3 示例 210
8.6.4 变体 216
8.7 用Interpreter替换隐式语言 217
8.7.1 动机 217
8.7.2 做法 219
8.7.3 示例 220
第9章 保护 230
9.1 用类替换类型代码 231
9.1.1 动机 231
9.1.2 做法 233
9.1.3 示例 234
9.2 用Singleton限制实例化 240
9.2.1 动机 240
9.2.2 做法 241
9.2.3 示例 241
9.3 引入Null Object 244
9.3.1 动机 244
9.3.2 做法 246
9.3.3 示例 247
第10章 聚集操作 252
10.1 将聚集操作搬移到Collecting Parameter 253
10.1.1 动机 253
10.1.2 做法 254
10.1.3 示例 255
10.2 将聚集操作搬移到Visitor 259
10.2.1 动机 259
10.2.2 做法 263
10.2.3 示例 267
第11章 实用重构 274
11.1 链构造函数 275
11.1.1 动机 275
11.1.2 做法 276
11.1.3 示例 276
11.2 统一接口 278
11.2.1 动机 278
11.2.2 做法 279
11.2.3 示例 279
11.3 提取参数 280
11.3.1 动机 280
11.3.2 做法 280
11.3.3 示例 281
跋 282
参考文献 283
索引 286
· · · · · · (收起)

读后感

评分

又一经典被蛋疼的翻译给毁了,我越看越不淡定,实在忍不住在书上画满删除线,大爆shit,第六章开始讲正题就充斥大量没标点的长句,带语病,好不容易加个标点,还能标错。看到译者序里写:"在准备写这篇译者序的时候,我终觉得很难,因为译者序类似读后感,是要到出翻译时的特...  

评分

最近刚看完<重构与模式>这本书, 这本书很适合我的一直以来的观点, 大多数情况下, 模式的应用是一个渐进演变的过程, 坏味道也不是一开始就出现的, 而在一开始就想到用这个模式, 那个模式的, 很可能导致设计过度. 貌似重构与模式有一种天然的关系. 重构是手段, 模式是目的, 同时...  

评分

又一经典被蛋疼的翻译给毁了,我越看越不淡定,实在忍不住在书上画满删除线,大爆shit,第六章开始讲正题就充斥大量没标点的长句,带语病,好不容易加个标点,还能标错。看到译者序里写:"在准备写这篇译者序的时候,我终觉得很难,因为译者序类似读后感,是要到出翻译时的特...  

评分

之前还没看过模式那本书,所以不知道那些模式。 现在看完只是对重构有一部分的了解,因为里面的代码为Java,而我是用objective-c的,但代码都是通用的。只能在之后看完了重构和模式两本书以后再回头看,应该会有更深刻的了解。 现在对项目的重构有了一点的帮助,很好。  

评分

不要在设计之初就采用复杂的设计模式,这一点我非常认同作者。使用设计模式是为了应对变化。在设计阶段难以预见系统变化。推荐采用简单的设计模式,例如工厂方法和组合方法。 这本书告知读者,复杂的设计模式(例如访问者)产生于不断重构。在重构过程中完善系统设计,应对未来...  

用户评价

评分

非常好的一本书,讲解怎么讲一段坏味道的代码经过重构,应用一种设计模式,得到一个恰当的结果。这本书更多是一本艰深的入门书,自己看的也是比较粗,过一段时间再好好复习一遍,应该会有很多收获吧。

评分

感觉非常有意思,把设计模式和重构联系到一起了。但写好代码真不是一两天就能解决的。天生难办。需要不断打磨,这些就是打磨之后的结果。但愿自己能够习得。

评分

请配合《重构》,《测试驱动开发》一起使用

评分

感觉非常有意思,把设计模式和重构联系到一起了。但写好代码真不是一两天就能解决的。天生难办。需要不断打磨,这些就是打磨之后的结果。但愿自己能够习得。

评分

书名原意是通过重构,把模式引入代码,最终是趋近于模式还是就是约定俗成的模式则是经验所在。跟着作者建议的阅读顺序,能相对顺序的把示例的代码进行比较理想的重构,部分模式需要主题阅读以理解应用。

本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度google,bing,sogou

© 2025 book.wenda123.org All Rights Reserved. 图书目录大全 版权所有