编写可维护的JavaScript 封面

编写可维护的JavaScript

评分 4.0
字数
400字
章节数
25
ISBN
9787115310088

标签

内容简介

《编写可维护的JavaScript》是《JavaScript高级程序设计》作者尼古拉斯·C. 扎卡斯(Nicholas C. Zakas)的代表作之一,原书由 O'Reilly Media 于2012年出版,中文版由淘宝UED团队的李晶、郭凯、张散集翻译,人民邮电出版社2013年4月推出。 作者在 Yahoo! 担任首席前端工程师五余年,从“单打独斗”的黑客式编程走向大型团队协作,本书正是他对这段经历的提炼:在一个多人协作的前端项目里,代码的可读性往往比技巧的巧妙程度更重要,一致性比个人偏好更重要。 全书分为三大部分。第一部分“编程风格”从最基本的格式化讲起,逐项讨论缩进、语句结尾、行长度、换行、空行、命名、直接量写法,进而覆盖注释的使用时机与文档注释、语句与表达式(花括号对齐、switch、with、for 与 for-in)、变量与函数声明、严格模式、相等运算符与 eval 等细节。第二部分“编程实践”进入架构层面:UI 层松耦合(不让 CSS 混入 JavaScript、不让 HTML 写死在脚本里)、避免全局变量(单全局对象、命名空间、模块、AMD)、事件处理的两条原则、避免与 null 比较、把配置数据从代码中分离、主动抛出错误、不修改不属于自己的对象、用特性检测代替浏览器检测。第三部分“自动化”围绕构建展开:文件与目录结构、Ant 构建脚本、代码校验、合并与“烘焙”、压缩与 gzip、文档生成以及自动化测试(YUI Test、Selenium、PhantomJS、JsTestDriver 等),最后演示如何把零散的环节组装成开发构建、集成构建与发布构建,并接入持续集成服务器。 中文版约226页,全书示例密实、条目清晰,更像一本可以直接落地使用的规范手册与工程实践指南。

编辑推荐

很多 JavaScript 学习者能写出跑得起来的代码,却写不出别人愿意接手的代码。本书解决的正是这件事:它不教你新语法,而是教你如何在团队中把代码写“整齐”。 作者扎卡斯是《JavaScript高级程序设计》的作者,在 Yahoo! 带过大型前端项目,书中每一条规则几乎都来自真实项目的教训。它的结构非常务实:编程风格部分细到缩进几级、逗号放哪、什么时候该写注释,读起来像一份逐条解释理由的团队规范;编程实践部分则提高了层次,涉及 UI 松耦合、全局变量治理、配置数据外置、自定义错误、不改他人对象、特性检测等至今仍被反复引用的原则;自动化部分手把手讲代码校验、合并、压缩、文档与自动化测试,并演示如何拼装成一套可运行的构建流程。 需要说明的是,自动化部分的具体工具(Ant、YUI Compressor、YUI Test、PhantomJS 等)在今天多已被 ESLint、打包器和现代测试框架取代,读这部分时应关注“为什么需要这一步”,而非照搬当年工具。中文版由淘宝UED团队翻译,术语准确、行文顺畅。对于想从“能写”跨到“能协作、可交付”的前端开发者,这仍是一本值得放在手边翻查的方法论书籍。

适合谁读

适合

  • 已有一定 JavaScript 基础、开始参与多人协作项目的前端开发者
  • 需要为团队制定或更新编码规范、代码评审清单的前端负责人
  • 刚进入职场、想快速摸清工程化与代码质量门槛的初级工程师
  • 带实习生或做技术培训、需要一份讲得清“为什么”的教材的讲师

不适合

  • 完全零基础、尚未写过完整 JavaScript 程序的入门读者
  • 主要想学框架用法或最新语法特性的读者,本书几乎不涉及这类内容
  • 期待拿到可直接套用的现代构建脚本的读者,书中工具链已明显过时

阅读建议

  1. 把本书当规范手册用:先通读第一部分,再在评审或重构时按条目回查,不必一次读完。
  2. 读编程实践部分时,打开自己项目里最乱的那个文件,边读边做对照修改,收效最直接。
  3. 自动化部分重点理解流程与目的,工具选型换成 ESLint、Prettier、打包器和现行测试框架即可。
  4. 团队共读时建议每周过一章,把书中条目剪裁成本团队的编码规范并落到评审清单里。

出版社简介

人民邮电出版社 中国 · 成立于 1953 年

人民邮电出版社以科技、计算机与信息通信类图书见长,并由此延伸至摄影、艺术、软件学习与励志成长等门类,形成较为多元的出版方向。库内图书既涵盖《重构与模式(修订版)》《华为交换机学习指南(第二版)》等计算机与通信技术读物,也收录《小王子(中英法彩绘典藏纪念版)》《了不起的盖茨比》《假如给我三天光明》等双语典藏类作品;《北京十年:1980-1990》与《鬼刀 WLOP个人插画作品集》则体现其在摄影与艺术领域的布局。作者资源包括安东尼·圣埃克苏佩里、海伦·凯勒、Joshua Kerievsky、王达、张兆增与WLOP等。

目录

  1. 第一部分 编程风格
  2. 第1章 基本的格式化
  3. 第2章 注释
  4. 第3章 语句和表达式
  5. 第4章 变量、函数和运算符
  6. 第二部分 编程实践
  7. 第5章 UI层的松耦合
  8. 第6章 避免使用全局变量
  9. 第7章 事件处理
  10. 第8章 避免“空比较”
  11. 第9章 将配置数据从代码中分离
  12. 第10章 抛出自定义错误
  13. 第11章 不是自己的对象不要修改
  14. 第12章 浏览器检测
  15. 第三部分 自动化
  16. 第13章 文件和目录结构
  17. 第14章 Ant
  18. 第15章 校验
  19. 第16章 文件合并和加工
  20. 第17章 文件精简和压缩
  21. 第18章 文档化
  22. 第19章 自动化测试
  23. 第20章 组装到一起
  24. 附录A JavaScript编码风格指南
  25. 附录B JavaScript工具集

常见问题

这本书和《JavaScript高级程序设计》是同一作者吗?
是。两者作者都是尼古拉斯·C. 扎卡斯(Nicholas C. Zakas)。《JavaScript高级程序设计》讲语言本身,本书讲的则是团队协作中如何组织、规范和自动化 JavaScript 代码,定位完全不同,可以互补阅读。
2013年出版的书,现在读还不过时吗?
前半部分关于风格、注释、松耦合、全局变量、错误处理、特性检测的原则基本不过时;第三部分的 Ant、YUI Compressor、PhantomJS 等具体工具已基本退出主流,建议把这一部分当作“为什么要做自动化”的入门思路来读。
中文版是谁翻译的,质量如何?
中文版由李晶、郭凯、张散集翻译,属淘宝UED团队组织,是国内较早有前端团队参与译校的技术书之一,术语处理较为一致,翻译质量常被读者提及为优点。
需要先精通 JavaScript 再读吗?
不需要精通,但要能独立写出包含函数、对象、事件处理的完整脚本。书中大量示例涉及回调、闭包与模块模式,完全没有基础会读得吃力,建议先完成一门入门课再读。
书的篇幅大吗,多久能读完?
中文版约226页,正文20章加两个附录。通读大约需要一周到两周的碎片时间;如果只读第一、二部分(前12章),三四个晚上即可完成,这也是多数读者建议的读法。

读者评论

查询本书

本站为索引目录:「全网查询」由您发起、在您的浏览器中运行,所列入口均指向第三方站点,请自行判断可用性。

同类高分