新書推薦:
《
虚拟资本:金融怎样挪用我们的未来
》
售價:NT$
352.0
《
刻意练习不生气
》
售價:NT$
179.0
《
大宋理财:青苗法与王安石的金融帝国(全彩插图本)
》
售價:NT$
500.0
《
安全感是内心长出的盔甲
》
售價:NT$
305.0
《
快人一步:系统性能提高之道
》
售價:NT$
505.0
《
我们为什么会做梦:让梦不再神秘的新科学
》
售價:NT$
352.0
《
算法图解(第2版)
》
售價:NT$
356.0
《
科学的奇幻之旅
》
售價:NT$
352.0
|
編輯推薦: |
如果你的JavaScript代码很糟糕,框架只能为你提供有限的帮助。无论使用什么框架、编译成JS的语言或者库,如果底层的JavaScript代码质量很糟糕的话,错误和性能问题将始终存在。通过本书,你将学到如何测试和重构现有的代码,以帮助降低复杂性、提高可读性并提高对代码库的信心。
|
內容簡介: |
本书作者向你展示如何识别糟糕的代码,然后通过多种重构方法来改进这些糟糕的代码。采用的技术从重命名变量到运用函数式和面向对象编程的原则。如果你想在前后端写出更好的JavaScript代码,那么本书必不可少。利用重构来重新组织现有的代码,而不改变它的行为。了解重构与质量之间的关系。探索现今使用的不同版本的JavaScript。创建自动化测试以确保你的代码可以工作,并且找到被遗漏掉的错误。了解如何重构简单的JavaScript结构、函数以及对象。运用面向对象和函数式编程原则来重构你的代码。重构异步JavaScript的检验方法。
|
關於作者: |
Evan Burchard是一位Web开发顾问,同时也是《The Web Game Developers Cookbook》的作者。在线下,他设计了一个屡获殊荣的体感游戏,包括堆积真实的冰块,他也定期继续他走遍美国的计划。
|
目錄:
|
目录
序 1
前言 3
第1章 重构是什么? 13
你如何保证不改变行为? 13
如果不改变行为,重构的目的是什么? 18
重构是什么,不是什么 21
小结 22
第2章 你使用哪种JavaScript? 23
版本与规范 24
平台与实现 25
预编译语言 26
框架 27
库 29
你需要什么JavaScript? 29
我们在用什么JavaScript? 30
小结 30
第3章 测试 31
为什么测试 34
测试的多种方法 35
工具和流程 43
小结 52
第4章 测试实践 53
从零开始的代码 55
采用测试驱动开发的从零开始的代码 61
未经测试的代码与特性测试 80
调试和回归测试 85
小结 93
第5章 基本重构目标 95
函数块 98
输入 101
输出 106
副作用 109
上下文第一部分:隐式输入 110
上下文第二部分:隐私 116
小结 128
第6章 重构基本结构 130
示例代码132
我们的信心策略 135
重命名 137
无用的代码 142
变量 148
字符串 157
使用数组:循环、forEach、映射 161
小结 167
第7章 重构函数与对象 168
示例代码(改进后) 168
数组和对象的替代品 171
测试我们所拥有的 179
提取函数185
用全局对象简化API 192
小结 246
第8章 层次结构中的重构 247
关于CRUD应用和框架247
构建层次结构 248
破坏层次结构 256
继承与结构 264
Has-A关系 270
继承反模式 271
小结 280
第9章 重构到面向对象模式 281
模板方法282
策略 285
状态 288
空对象 295
包装(装饰器和适配器) 302
外观 310
小结 313
第10章 重构异步 315
为什么用异步? 315
修复金字塔厄运 318
回调和测试 326
Promises 330
小结 336
第11章 函数式重构 337
函数式编程的限制和好处 338
基础 344
高级基础358
Burritos 369
学习和使用Burritos 383
从OOP迁移到FP 385
小结 390
第12章 结论 392
附录A 进一步阅读和资源 393
|
|