当前位置:首页 > 工业技术
软件开发与创新  ThoughtWorks文集  续集
软件开发与创新  ThoughtWorks文集  续集

软件开发与创新 ThoughtWorks文集 续集PDF电子书下载

工业技术

  • 电子书积分:9 积分如何计算积分?
  • 作 者:美国ThoughtWorks公司著
  • 出 版 社:北京:人民邮电出版社
  • 出版年份:2014
  • ISBN:9787115342942
  • 页数:178 页
图书介绍:本书中涵盖的软件开发主题十分广泛,从优化敏捷方法论到核心语言极客都有涉及。其中包括对持续集成、测试和改进软件交付过程提出的独到建议,以及如何在面向对象语言和现代Java web应用程序中使用函数式编程技术等。
《软件开发与创新 ThoughtWorks文集 续集》目录

第1章 引言 1

第一部分 语言 4

第2章 最有趣的语言 4

2.1为什么语言很重要 5

2.2一些有趣的语言 5

2.2.1 Clojure 5

2.2.2 CoffeeScript 10

2.2.3 Erlang 14

2.2.4 Factor 18

2.2.5 Fantom 21

2.2.6 Haskell 26

2.2.7 Io 30

2.3总结 33

第3章 面向对象程序设计:对象优于类 34

3.1对象优于类 35

3.2类关注与对象关注 36

3.2.1角色的角色 36

3.2.2职责分离 42

3.2.3测试的角度 45

3.2.4代码库里的线索 46

3.3“对象关注”的语言 47

3.3.1 Ruby 47

3.3.2 JavaScript 53

3.3.3 Groovy 56

3.3.4 Scala 58

3.4要点回顾 58

3.5总结 59

第4章 使用面向对象语言进行函数式编程 60

4.1集合 60

4.1.1转换思维 60

4.1.2拥抱集合 63

4.1.3勿忘封装 64

4.1.4惰性求值 65

4.2“一等公民”和高阶函数 67

4.3状态最小化 69

4.4其他理念 70

4.5总结 73

第二部分 测试 76

第5章 极限性能测试 76

5.1问题描述 76

5.1.1分离性能测试的传统方式 76

5.1.2极限编程和敏捷软件开发 77

5.1.3分离性能测试的不足 78

5.2另辟蹊径 78

5.2.1独立的多功能团队 79

5.2.2描述需求 80

5.2.3设定计划与排定优先级 81

5.2.4实现性能故事 82

5.2.5展示与反馈 83

5.3极限性能测试实践 83

5.3.1性能负责人 83

5.3.2自动化部署 84

5.3.3自动化分析 85

5.3.4结果仓库 85

5.3.5结果可视化 86

5.3.6自动化测试流程 86

5.3.7健全性测试 87

5.3.8持续性能测试 88

5.3.9规范的性能提升 88

5.4这对我们有何帮助 89

5.4.1更好的性能 89

5.4.2更低的复杂度 89

5.4.3更高的团队效率 90

5.4.4更合理的优先级排定 90

5.4.5开启持续交付 90

5.5总结 90

第6章 测试驱动JavaScript 91

6.1 JavaScript的复兴 91

6.2当前JavaScript的处理方式与问题 92

6.3分离关注点 92

6.4测试方式 100

6.4.1倾向于交互测试,而非集成测试 100

6.4.2在具体用例中使用HTML夹具编写集成测试 100

6.4.3使用验收测试验证所有组件的集成 101

6.5持续集成 101

6.6工具 101

6.6.1单元测试 102

6.6.2语法检查 102

6.6.3 mock框架 102

6.7总结 102

第7章 构建更好的验收测试 103

7.1快速测试 103

7.1.1基于用户行程的测试 103

7.1.2并行执行测试集 104

7.1.3考虑使用多种测试驱动器 105

7.1.4将测试分开运行 107

7.1.5等待页面元素显示时要小心 107

7.2有弹性的测试 107

7.2.1单独选择页面元素 108

7.2.2等待页面元素显示时要小心(再次强调) 109

7.2.3在测试中设置测试依赖的数据 110

7.2.4测试集成点 110

7.3易于维护的测试 111

7.3.1使用页面模型 111

7.3.2结构一致的测试集 112

7.3.3测试代码产品代码一视同仁 113

7.3.4切勿受限于工具 113

7.4付诸实践 114

7.4.1一地团队 114

7.4.2维护测试,人人有责 115

7.4.3故事启动 115

7.4.4结对测试开发 115

7.4.5故事展示 116

7.5总结 116

第三部分 软件开发问题 118

第8章 现代Java Web应用 118

8.1过去的状况 118

8.1.1有状态的服务器 119

8.1.2依赖容器 119

8.1.3违反HTTP规范 120

8.2无状态服务器 120

8.2.1集群 120

8.2.2 cookie救世 121

8.2.3区分用户特定的数据 121

8.2.4安全cookie 122

8.3容器是可选的 123

8.3.1容器外测试 123

8.3.2我们真的需要容器吗 125

8.4按新鲜程度分区 125

8.4.1缓存:可扩展网站的秘密武器 125

8.4.2选择缓存的内容 126

8.4.3按新鲜程度分区简介 126

8.4.4反向代理和内容发布网络简介 128

8.5 POST重定向到GET 129

8.6总结 130

第9章 驾驭集成难题 131

9.1持续集成方法 132

9.1.1稳定基准 132

9.1.2集成stub 133

9.1.3构建流水线 134

9.1.4监控器 134

9.2定义集成契约 135

9.3度量和可见性 135

9.4总结 136

第10章 实践中的特性开关 137

10.1简单特性开关 138

10.2可维护的特性开关 138

10.2.1依赖注入 139

10.2.2注解 140

10.3分离静态资源 141

10.4阻止意外泄露 142

10.5运行时开关 142

10.6不兼容依赖 143

10.7特性开关的测试 143

10.8删除完成特性的开关 144

10.9总结 144

第11章 交付创新 145

11.1价值流向 146

11.2新方法 147

11.2.1协作文化 147

11.2.2敏捷产品调研与发现 149

11.2.3快速启动 153

11.2.4持续设计,持续交付 155

11.3总结 156

第四部分 数据可视化 158

第12章 一图胜千言 158

12.1闻闻咖啡 158

12.2可视化设计原则 159

12.3可视化设计流程 160

12.3.1定义领域任务 160

12.3.2任务抽象 161

12.3.3数据抽象 161

12.3.4可视化编码 163

12.3.5评估与完善 167

12.4可视化设计模式 168

12.4.1探索随时间变化的数据 168

12.4.2探索相关性 170

12.4.3探索层次与“局部到整体”关系 170

12.4.4探索连结和网络 172

12.5工具和框架 173

12.5.1可视化程序库 173

12.5.2图型化工具 174

12.6总结 174

参考文献 176

索引 178

相关图书
作者其它书籍
返回顶部