分享
 
 
 

重构与模式

王朝百科·作者佚名  2010-01-18
窄屏简体版  字體: |||超大  

重构与模式

作者:(美)科瑞夫斯盖 著,杨光,刘基诚 译 出版社:人民邮电出版社出版日期:2006-12-1 ISBN:7115153361 字数:465000 印次:1 版次:1 纸张:胶版纸

内容提要

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

本书适于面向对象软件开发人员阅读,也可作为高校计算机专业、软件工程专业师生的参考读物。

作者简介

Joshua Kerievsky,资深软件设计师,软件开发公司Industrial Logic的创始人,是年轻一代软件开发方面最具人气的专家之一。他曾为许多专业杂志撰稿,并多次在世界级技术会议上担任讲师。除本书外,他还参加撰写了Extreme Pro-gramming Explored和Extreme Programming Perspectives。

目录

第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章代码坏味29

4.1重复代码(Duplicated Code)31

4.2方法过长(Long Method)31

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

4.4基本类型迷恋(Primitive Obsession)33

4.5不恰当的暴露(Indecent Exposure)33

4.6解决方案蔓延(Solution Sprawl)34

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

4.8冗赘类(Lazy Class)34

4.9类过大(Large Class)34

4.10分支语句(Switch Statement)35

4.11组合爆炸(Combinatorial Explosion)35

4.12怪异解决方案(Oddball Solution)35

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

5.1重构的格式37

5.2本目录中引用的项目38

5.2.1XML Builder39

5.2.2HTML Parser39

5.2.3贷款风险计算程序40

5.3起点40

5.4学习顺序41

第6章创建43

6.1用Creation Method替换构造函数44

6.1.1动机44

6.1.2做法46

6.1.3示例46

6.1.4变体51

6.2将创建知识搬移到Factory52

6.2.1动机53

6.2.2做法55

6.2.3示例56

6.3用Factory封装类61

6.3.1动机62

6.3.2做法63

6.3.3示例63

6.3.4变体66

6.4用Factory Method引入多态创建68

6.4.1动机68

6.4.2做法69

6.4.3示例71

6.5用Builder封装Composite74

6.5.1做法76

6.5.2示例77

6.5.3变体87

6.6内联Singleton90

6.6.1动机90

6.6.2做法92

6.6.3示例93

第7章简化97

7.1组合方法98

7.1.1动机98

7.1.2做法100

7.1.3示例100

7.2用Strategy替换条件逻辑103

7.2.1动机103

7.2.2做法105

7.2.3示例106

7.3将装饰功能搬移到Decorator115

7.3.1动机115

7.3.2做法119

7.3.3示例120

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

7.4.1动机134

7.4.2做法135

7.4.3示例136

7.5用Composite替换隐含树144

7.5.1动机144

7.5.2做法147

7.5.3示例148

7.6用Command替换条件调度程序155

7.6.1动机156

7.6.2做法157

7.6.3示例158

第8章泛化165

8.1形成Template Method166

8.1.1动机167

8.1.2做法168

8.1.3示例168

8.2提取Composite173

8.2.1动机173

8.2.2做法174

8.2.3示例175

8.3用Composite替换一/多之分181

8.3.1动机181

8.3.2做法183

8.3.3示例184

8.4用Observer替换硬编码的通知191

8.4.1动机191

8.4.2做法192

8.4.3示例193

8.5通过Adapter统一接口200

8.5.1动机200

8.5.2做法201

8.5.3示例202

8.6提取Adapter209

8.6.1动机209

8.6.2做法211

8.6.3示例211

8.6.4变体217

8.7用Interpreter替换隐式语言218

8.7.1动机218

8.7.2做法220

8.7.3示例221

第9章保护231

9.1用类替换类型代码232

9.1.1动机232

9.1.2做法234

9.1.3示例235

9.2用Singleton限制实例化240

9.2.1动机240

9.2.2做法241

9.2.3示例241

9.3引入Null Object243

9.3.1动机244

9.3.2做法245

9.3.3示例246

第10章聚集操作251

10.1将聚集操作搬移到Collecting Parameter252

10.1.1动机252

10.1.2做法253

10.1.3示例254

10.2将聚集操作搬移到Visitor258

10.2.1动机258

10.2.2做法262

10.2.3示例266

第11章实用重构273

11.1链构造函数274

11.1.1动机274

11.1.2做法275

11.1.3示例275

11.2统一接口277

11.2.1动机277

11.2.2做法278

11.2.3示例278

11.3提取参数279

11.3.1动机279

11.3.2做法279

11.3.3示例280

跋281

参考文献283

索引287

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有