图书介绍
软件再工程 优化现有软件系统的方法与最佳实践PDF|Epub|txt|kindle电子书版本下载
- (美)BradleyIrby著 著
- 出版社: 北京:机械工业出版社
- ISBN:9787111448815
- 出版时间:2014
- 标注页数:253页
- 文件大小:46MB
- 文件页数:271页
- 主题词:软件工程
PDF下载
下载说明
软件再工程 优化现有软件系统的方法与最佳实践PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
译者序2
前言2
第一部分 目标架构2
第1章 实现面向服务的架构2
1.1面向服务的架构概览2
1.2理解标准化服务约定3
1.3理解耦合8
1.4理解服务抽象10
1.5设计可复用服务13
1.6理解服务自治和服务组合13
1.7理解服务的无状态性13
1.8一个服务示例18
1.9总结19
第2章 理解应用程序架构20
2.1使用架构模式20
2.2架构模式概览20
2.3 MVP、 MVC和MVVM的区别21
2.3.1模型访问22
2.3.2视图模型23
2.4处理UI事件28
2.5模式如何工作32
2.6应该选择哪种模式33
2.7总结34
第3章 单元测试35
3.1一个单元测试示例35
3.2创建单元测试36
3.3编写测试38
3.4检测异常43
3.5理解Assert的强大46
3.6单元测试与集成测试比较46
3.7使用InternalsVisibleTo属性46
3.8理解测试驱动开发48
3.9了解单元测试的更多内容49
3.10总结49
第4章 理解依赖倒置原则50
4.1理解紧耦合50
4.2实现抽象工厂模式56
4.3引入接口59
4.4创建单元测试62
4.5理解服务定位63
4.5.1控制反转容器63
4.5.2服务定位器66
4.5.3一个真实的示例68
4.5.4按需服务属性72
4.5.5单元测试的优点75
4.5.6最后调整75
4.6使用依赖注入78
4.7为什么服务定位对再工程来说更好82
4.8总结86
第5章 对单元测试使用测试替身87
5.1测试替身如何工作87
5.2测试替身可以满足什么需要87
5.3创建存根90
5.4创建模拟94
5.4.1第二个模拟示例97
5.4.2第三个模拟示例98
5.5使用模拟系统服务99
5.6了解测试替身的更多内容101
5.7总结101
第二部分 再工程104
第6章 回顾最初的解决方案104
6.1分析代码104
6.1.1基础架构105
6.1.2代码结构105
6.1.3数据库访问106
6.1.4数据结构106
6.1.5外部接口106
6.1.6应用程序控件与窗体控件107
6.2分析一般代码结构107
6.3管理语言迁移108
6.4删除死代码108
6.5使用全局变量109
6.6适度代码转换111
6.7使用自动化代码转换实用工具112
6.8使用数据访问技术113
6.8.1侦测数据模型113
6.8.2侦测数据访问模式115
6.9总结115
第7章 项目规划116
7.1管理期望116
7.2创建再工程团队116
7.3识别开发工具和生成过程117
7.3.1引入源代码管理117
7.3.2引入缺陷跟踪118
7.3.3安装和使用持续集成服务器118
7.4清理旧版解决方案119
7.5建立基础119
7.6重构以使用基本服务120
7.7重构以使用高级服务121
7.8向利益相关者报告进展情况121
7.9管理沟通和培训122
7.10总结122
第8章 识别开发工具和生成过程123
8.1使用源代码管理123
8.1.1源代码管理的类型123
8.1.2第一个流程示例:使用分布式系统124
8.1.3第二个流程示例:使用分布式系统125
8.1.4第三个流程示例:使用集中式系统125
8.2理解集中式系统和分布式系统的优缺点125
8.2.1使用别人的共享代码126
8.2.2与别人共享代码并审查更改126
8.2.3备份代码126
8.2.4管理签入频率126
8.2.5管理合并冲突127
8.2.6管理控制127
8.2.7优缺点的最后说明127
8.3评估主机托管服务127
8.3.1使用Apache Subversion128
8.3.2使用微软的团队基础服务器128
8.3.3使用Git129
8.4管理功能和缺陷129
8.4.1管理自定义工作流129
8.4.2管理敏捷开发130
8.4.3管理报告130
8.5使用持续集成服务器和生成服务器130
8.6使用Visual Studio 2010开发工具131
8.6.1 Visual Studio的重构工具131
8.6.2第三方重构工具132
8.7总结133
第9章 清理旧版解决方案134
9.1组织文件系统134
9.2项目结构化135
9.3确定项目类别136
9.4理解项目类型137
9.4.1应用程序无关项目137
9.4.2通用UI项目137
9.4.3模型无关项目138
9.4.4模型特定项目138
9.5再工程项目建议138
9.5.1常量138
9.5.2数据传输对象项目139
9.5.3接口140
9.5.4服务140
9.5.5域模型项目141
9.5.6 Repository项目141
9.5.7控制器、视图模型和表示器142
9.6重构解决方案结构142
9.6.1去除不必要的Using语句142
9.6.2分离单元测试和集成测试143
9.6.3将类移动到合适的项目143
9.6.4将快捷方式移动到库144
9.7影响逻辑的重构144
9.7.1将初始化逻辑移动到构造器内145
9.7.2用卫语句代替嵌套的if语句146
9.7.3去除对实体类构造器的访问150
9.8总结150
第10章 建立基础151
10.1添加新项目151
10.2使用Prism、Unity和Enterprise Library版本151
10.3修改外壳程序154
10.3.1创建IBaseView154
10.3.2修改当前外壳程序155
10.3.3添加一个外壳程序控制器156
10.4创建服务定位器157
10.5建立Bootstrapper类159
10.5.1创建Winforms引导程序159
10.5.2更新Winforms Program类161
10.5.3创建一个WPF应用程序和引导程序163
10.5.4使用替代引导程序的配置166
10.6总结168
第11章 服务的基本重构169
11.1使用DialogService169
11.1.1单元测试173
11.1.2重构DialogService178
11.1.3添加单元测试179
11.2使用LogWriterService179
11.3跟踪会话信息184
11.4以SOA方式访问资源186
11.5使用消息聚合器190
11.6转换静态类194
11.7重构静态类194
11.8总结195
第12章 服务的高级重构196
12.1使用知识库模式196
12.1.1用域模型创建知识库203
12.1.2再工程知识库的方法207
12.1.3转换现有代码以使用域模型207
12.1.4向域模型中添加数据验证208
12.1.5再工程域模型以使用验证212
12.2使用通用对象管理器212
12.3用命令调度服务简化复杂代码217
12.4总结225
第13章 重构为控制器226
13.1使用旧版方法创建窗体226
13.2准备视图229
13.3引入控制器230
13.4优化控制器231
13.5总结233
附录 用Visual Studio 2012再工程.NET项目234