《NET最佳实践》PDF下载

  • 购买积分:11 如何计算积分?
  • 作  者:(美)ATEPHEN RITCHIE著;黄灯桥,黄浩宇,李永译
  • 出 版 社:北京:机械工业出版社
  • 出版年份:2014
  • ISBN:7111449126
  • 页数:284 页
图书介绍:本书涵盖广泛的、开发专家认可的实践和原则,指导读者通过正确的方法来开发软件,包括持续集成、自动化测试、自动化部署和代码分析等关键点。本书讲解了当每次代码更改时,如何获得一个可以运行和执行构建的持续集成服务器,如何编写更清晰、更可维护的自动化测试代码,并给出了使你的。Net项目成功的专家级建议。同时,本书也给出了学习和遵循。NET最佳实践的方法和技巧,使读者避开陷阱,避免犯同样的错误。

第1章 冷静待之 1

1.1实践选择 3

1.1.1可行性 3

1.1.2认可度 5

1.1.3价值 6

1.1.4原型 6

1.2关注需要改善的目标领域 7

1.2.1产品交付 8

1.2.2软件质量 9

1.2.3团队关系 10

1.3整体改善 11

1.3.1均衡 11

1.3.2面貌一新 12

1.3.3可持续性 12

1.4小结 13

第2章 .NET实践领域 15

2.1从内部挖掘 17

2.1.1技术债 17

2.1.2缺陷跟踪系统 18

2.1.3反思分析 19

2.1.4前瞻性分析 20

2.2应用程序生命周期管理 20

2.3设计模式和开发指南 22

2.3.1 .NET设计规范 23

2.3.2微软的模式和实践小组 23

2.3.3显示界面层设计模式 24

2.3.4对象-对象映射 25

2.3.5依赖注入 25

2.4研究和开发 26

2.4.1自动化测试生成工具 27

2.4.2契约式编码 30

2.5微软安全开发生命周期 30

2.6小结 32

第3章 实现预期目标 33

3.1成功要素 34

3.1.1项目启动阶段 37

3.1.2超出范围 38

3.1.3干扰和分心 38

3.1.4学习与工作之间的平衡 39

3.2共识 39

3.2.1线框图 40

3.2.2文档化架构 41

3.2.3报表模型 42

3.2.4细节化示例 42

3.2.5创建原型 43

3.3预期目标 44

3.3.1交付 44

3.3.2实际成果 44

3.3.3趋势 46

3.4小结 47

第4章 量化价值 48

4.1价值 50

4.1.1财务回报 50

4.1.2提高可控性 51

4.1.3提高质量品质 52

4.1.4更加高效 53

4.2数据来源 54

4.2.1定量数据 54

4.2.2定性数据 57

4.2.3业界证据 58

4.3小结 59

第5章 战略 60

5.1认知 62

5.1.1头脑风暴 62

5.1.2规划 63

5.1.3监控 64

5.1.4沟通 64

5.2个体过程 66

5.2.1卓越的承诺 67

5.2.2良性的纪律 67

5.2.3效力和坚持 68

5.3杠杆 69

5.3.1自动化 69

5.3.2警报系统 70

5.3.3经验和专业知识 71

5.4小结 71

第6章 .NET的规章制度 72

6.1编码标准和指南 73

6.1.1来源 73

6.1.2异常 75

6.1.3 disposable模式 78

6.1.4其他事项 82

6.2代码异味 86

6.2.1注释 86

6.2.2过于复杂 88

6.2.3未用到的、无法到达的和无效的代码 89

6.3小结 89

第7章 强大的C#构造 90

7.1扩展方法 91

7.2隐式类型的局部变量 94

7.3可以为null的类型 96

7.4 null合并运算符 98

7.5可选参数 99

7.6泛型 102

7.7 LINQ 103

7.8小结 108

第8章 自动测试 109

8.1案例研究 111

8.2棕色地带的应用程序 112

8.3绿色地带的应用程序 114

8.4自动测试基础 115

8.5测试代码的可维护性 115

8.5.1命名约定 116

8.5.2测试方法主体 119

8.6单元测试 131

8.6.1边界分析 133

8.6.2无效参数 134

8.6.3无效的前提条件 136

8.7伪造、存根和模拟 137

8.7.1隔离被测试代码 137

8.7.2测试依赖交互 139

8.8表面测试 140

8.9自动集成测试 143

8.10数据库注意事项 144

8.11小结 145

第9章 生成自动化 146

9.1生成工具 147

9.2 MSBuild基础 148

9.2.1任务和目标 148

9.2.2 PropertyGroup和 ItemGroup 150

9.2.3基本任务 154

9.3日志 155

9.4参数和变量 157

9.5库和扩展 159

9.6导入和包含 160

9.7内联任务 161

9.8常见任务 163

9.8.1日期和时间 163

9.8.2程序集信息 164

9.8.3 XML的Peek和Poke 165

9.8.4 zip存档 166

9.9自动部署 167

9.9.1生成一次,部署多次 168

9.9.2打包工具 169

9.9.3部署工具 169

9.10小结 170

第10章 持续集成 171

10.1案例研究 172

10.2 CI服务器 173

10.2.1 CruiseControl.NET 174

10.2.2 Jenkins 175

10.2.3 TeamCity 175

10.2.4 Team Foundation Server 176

10.3 CI生命周期 176

10.3.1重新生成 177

10.3.2单元测试 182

10.3.3分析 184

10.3.4打包 187

10.3.5部署 188

10.3.6稳定性测试 190

10.3.7生成报告 192

10.4小结 192

第11章 代码分析 193

11.1案例研究 195

11.2静态分析 196

11.2.1程序集分析 197

11.2.2源代码分析 205

11.2.3架构和设计 211

11.2.4代码度量值 213

11.2.5质量保证指标 213

11.3动态分析 214

11.3.1代码覆盖率 214

11.3.2性能分析 216

11.3.3查询分析 217

11.3.4日志 217

11.4小结 218

第12章 测试框架 219

12.1单元测试框架 220

12.2测试运行器 221

12.2.1 NUnit的GUI和控制台运行器 221

12.2.2 ReSharper测试运行器 224

12.2.3 Visual Studio测试运行器 227

12.2.4 Gallio测试运行器 230

12.2.5 xUnit.net测试运行器 231

12.3 xUnit测试模式 233

12.3.1标识测试方法 233

12.3.2标识测试类和夹具 234

12.3.3断言 239

12.4模拟对象框架 240

12.4.1使用Rhino Mocks动态生成伪对象 240

12.4.2使用Moles进行隔离测试 243

12.5数据库测试框架 248

12.6用户界面测试框架 252

12.6.1 Web应用程序测试框架 252

12.6.2 Windows窗体和其他用户界面测试框架 253

12.7验收测试框架 253

12.7.1测试规范和行为 254

12.7.2业务逻辑验收测试 255

12.8小结 256

第13章 反感和偏见 257

13.1团体利益偏见 258

13.2玫瑰色回顾 259

13.3团体与个人的评价 260

13.4维持现状和辩解机制 260

13.5优势错觉 261

13.6达克效应 261

13.7鸵鸟效应 262

13.8赌徒谬误 263

13.9歧义效应 263

13.10集中效应 264

13.11双曲贴现 264

13.12常态偏见 265

13.13小结 265

附录A 参考资源 266

附录B 记分卡 279