- 网页设计
- 整站网页设计
- 网站模板设计
- 网站开发
- 综合门户网开发
- 企业网站开发
- 电子商务网站开发
- 资讯网站开发
- 团购网站开发
- 手机网站开发
- 宣传展示网站
- 网站功能开发
- 网站特效制作
- 应用软件开发
- 手机应用软件
- 计算机应用软件
- 软件美工
- 程序修改
- 仿网站开发
- 脚本插件
- 软件测试
- 网站改版
- 企业办公系统
- 软件汉化
- 软件界面皮肤
- 企业办公系统界面
- 应用移植
- Android开发
- IOS开发
- 应用汉化
- 安卓系统定制
- 网店装修
重构 改善既有代码的设计 重构改善代码第二版 代码编程 html网页代码 代码大全 Java 代码修改 代码设计 电脑程序代码书 编程
- 产品名称:重构-改善既有代码的设计...
- 书名:重构-改善既有代码的设计(第2版)
- 作者:美]马丁.福勒(MartinFowler
- 定价:99.00元
- 书名:重构-改善既有代码的设计(第2版)
- 是否是套装:否
- 出版社名称:人民邮电出版社

重构 改善既有代码的设计 第2版 平装版 | ||
![]() | 定价 | (咨询特价) |
出版社 | 人民邮电出版社 | |
版次 | 1 | |
出版时间 | (咨询特价)年05月 | |
开本 | 16开 | |
作者 | [美]马丁·福勒(Martin Fowler) | |
装帧 | 平装 | |
页数 | ||
字数 | ||
ISBN编码 | 52 | |
重量 |

本书是经典著作《重构》出版20年后的更新版。书中清晰揭示了重构的过程,解释了重构的原理和实践方式,并给出了何时以及何地应该开始挖掘代码以求改善。书中给出了60多个可行的重构,每个重构都介绍了一种经过验证的代码变换手法的动机和技术。本书提出的重构准则将帮助开发人员一次一小步地修改代码,从而减少了开发过程中的风险。 本书适合软件开发人员、项目管理人员等阅读,也可作为高等院校计算机及相关专业师生的参考读物。

第 1 章 重构,第 一个示例 …………………………………………………………… 1
1.1 起点 ……………………………………………………………………………………… 1
1.2 对此起始程序的评价 …………………………………………………………………… 3
1.3 重构的第 一步 …………………………………………………………………………… 5
1.4 分解statement 函数 …………………………………………………………………… 6
1.5 进展:大量嵌套函数 …………………………………………………………………… 22
1.6 拆分计算阶段与格式化阶段 …………………………………………………………… 24
1.7 进展:分离到两个文件(和两个阶段) ……………………………………………… 31
1.8 按类型重组计算过程 …………………………………………………………………… 34
1.9 进展:使用多态计算器来提供数据 …………………………………………………… 41
1.10 结语 …………………………………………………………………………………… 43
第 2 章 重构的原则 ………………………………………………………………… 45
2.1 何谓重构 ………………………………………………………………………………… 45
2.2 两顶帽子 ………………………………………………………………………………… 46
2.3 为何重构 ………………………………………………………………………………… 47
2.4 何时重构 ………………………………………………………………………………… 50
2.5 重构的挑战 ……………………………………………………………………………… 55
2.6 重构、架构和YAGNI ………………………………………………………………… 62
2.7 重构与软件开发过程 …………………………………………………………………… 63
2.8 重构与性能 ……………………………………………………………………………… 64
2.9 重构起源何处 …………………………………………………………………………… 67
2.10 自动化重构 …………………………………………………………………………… 68
2.11 延展阅读 ……………………………………………………………………………… 70
第3 章 代码的坏味道 ……………………………………………………………… 71
3.1 神秘命名(Mysterious Name) ……………………………………………………… 72
3.2 重复代码(Duplicated Code) ………………………………………………………… 72
3.3 过长函数(Long Function) ………………………………………………………… 73
3.4 过长参数列表(Long Parameter List) ……………………………………………… 74
3.5 全局数据(Global Data) ……………………………………………………………… 74
3.6 可变数据(Mutable Data) …………………………………………………………… 75
3.7 发散式变化(Divergent Change) …………………………………………………… 76
3.8 霰弹式修改(Shotgun Surgery) …………………………………………………… 76
3.9 依恋情结(Feature Envy) …………………………………………………………… 77
3.10 数据泥团(Data Clumps) …………………………………………………………… 78
3.11 基本类型偏执(Primitive Obsession) ……………………………………………… 78
3.12 重复的switch(Repeated Switches) ……………………………………………… 79
3.13 循环语句(Loops) …………………………………………………………………… 79
3.14 冗赘的素(Lazy Element) ……………………………………………………… 80
3.15 夸夸其谈通用性(Speculative Generality) ………………………………………… 80
3.16 临时字段(Temporary Field) ……………………………………………………… 80
3.17 过长的消息链(Message Chains) ………………………………………………… 81
3.18 中间人(Middle Man) ……………………………………………………………… 81
3.19 内幕交易(Insider Trading) ………………………………………………………… 82
3.20 过大的类(Large Class) …………………………………………………………… 82
3.21 异曲同工的类(Alternative Classes with Different Interfaces) ……………… 83
3.22 纯数据类(Data Class) ……………………………………………………………… 83
3.23 被拒绝的遗赠(Refused Bequest) ………………………………………………… 83
3.24 注释(Comments) …………………………………………………………………… 84
第4 章 构筑测试体系 ……………………………………………………………… 85
4.1 自测试代码的价值 ……………………………………………………………………… 85
4.2 待测试的示例代码 ……………………………………………………………………… 87
4.3 第 一个测试 ……………………………………………………………………………… 90
4.4 再添加一个测试 ………………………………………………………………………… 93
4.5 修改测试夹具 …………………………………………………………………………… 95
4.6 探测边界条件 …………………………………………………………………………… 96
4.7 测试远不止如此 ………………………………………………………………………… 99
第5 章 介绍重构名录 ……………………………………………………………… 101
5.1 重构的记录格式 ……………………………………………………………………… 101
5.2 挑选重构的依据 ……………………………………………………………………… 102
第6 章 第 一组重构 ………………………………………………………………… 105
6.1 提炼函数(Extract Function) …………………………………………………… 106
6.2 内联函数(Inline Function) ……………………………………………………… 115
6.3 提炼变量(Extract Variable) ……………………………………………………… 119
6.4 内联变量(Inline Variable) ……………………………………………………… 123
6.5 改变函数声明(Change Function Declaration) ………………………………… 124
6.6 封装变量(Encapsulate Variable) ………………………………………………… 132
6.7 变量改名(Rename Variable) …………………………………………………… 137
6.8 引入参数对象(Introduce Parameter Object) …………………………………… 140
6.9 函数组合成类(Combine Functions into Class) ……………………………… 144
6.10 函数组合成变换(Combine Functions into Transform) …………………… 149
6.11 拆分阶段(Split Phase) …………………………………………………………… 154
第7 章 封装 ………………………………………………………………………… 161
7.1 封装记录(Encapsulate Record) ………………………………………………… 162
7.2 封装集合(Encapsulate Collection) ……………………………………………… 170
7.3 以对象取代基本类型(Replace Primitive with Object) ……………………… 174
7.4 以查询取代临时变量(Replace Temp with Query) …………………………… 178
7.5 提炼类(Extract Class) …………………………………………………………… 182
7.6 内联类(Inline Class) ……………………………………………………………… 186
7.7 隐藏委托关系(Hide Delegate) …………………………………………………… 189
7.8 移除中间人(Remove Middle Man) ……………………………………………… 192
7.9 替换算法(Substitute Algorithm) ………………………………………………… 195
-
最近销售:0 掌柜:商贸部¥18 元
-
最近销售:0 掌柜:山东码垛机设备及配件大全¥150 元
-
最近销售:0 掌柜:济南新华书店图书音像专营¥253 元
-
最近销售:0 掌柜:山东码垛机设备及配件大全¥150 元
-
最近销售:0 掌柜:济南新华书店图书音像专营¥273 元