新書推薦:
《
耕读史
》
售價:HK$
109.8
《
地理计算与R语言 [英] 罗宾·洛夫莱斯 [德]雅纳·蒙乔 [波兰] 雅库布·诺沃萨德
》
售價:HK$
121.0
《
沈括的知识世界:一种闻见主义的实践(中华学术译丛)
》
售價:HK$
87.4
《
大思维:哥伦比亚商学院六步创新思维模型
》
售價:HK$
72.8
《
宏观经济学(第三版)【2024诺贝尔经济学奖获奖者作品】
》
售價:HK$
155.7
《
UE5虚幻引擎必修课(视频教学版)
》
售價:HK$
110.9
《
真需求
》
售價:HK$
110.9
《
阿勒泰的春天
》
售價:HK$
50.4
|
編輯推薦: |
如果你的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
|
|