JavaScript框架设计(第2版) 封面

JavaScript框架设计(第2版)

评分 3.5
字数
516字
章节数
16
ISBN
9787115464293

标签

内容简介

《JavaScript框架设计》是前端开发者司徒正美(钟钦成)长期积累的原创技术著作,第2版在第1版基础上删改增补,围绕“如何从零搭起一个 JavaScript 框架”展开,逐层拆解前端框架内部那些看不见的地基。全书共十六章:从种子模块讲起,讨论模块化组织、对象扩展、数组化、类型判定与 domReady、无冲突处理;接着是语言模块,演示对字符串、数组、数值、函数、日期等原生类型的扩展与能力修复;随后进入浏览器嗅探与特征侦测、类工厂与各种继承方案、选择器引擎、节点模块、数据缓存模块、样式模块与属性模块,把 jQuery 时代的核心子系统一个个拆开看实现。事件系统部分同时覆盖 PC 端与移动端事件,并专门分析 jQuery 的事件体系;异步模型一章延伸到 Promise 与后续异步方案;数据交互模块给出一个完整的 Ajax 实现;动画引擎、API 设计、插件化等内容则关系到框架的可用性与扩展性。后段进入 MVVM:静态前端模板、MVVM 动态模板、性能墙与复杂墙、组件方案,并横向比较 jQuery 时代组件、avalon2 组件与 React 组件三种思路。第1版出版于 2014 年,第2版修订于 2017 年,两版隔了三年,读者可按手头版本对读部分章节差异。

编辑推荐

市面上讲“怎么用框架”的书多到泛滥,讲“框架为什么这么写”的书却始终稀缺,这本是少数之一。它的价值不在教你调用 API,而在把 jQuery、avalon 这类框架的内部零件一个个拆开摆在你面前:domReady 到底怎么判断、选择器引擎怎么从字符串变成元素、类工厂为什么要绕那么多弯、事件系统怎样做冒泡与委托、模板怎样从静态字符串变成可更新的 DOM。作者司徒正美本人就是 avalon 框架的作者,写的是自己淌过的坑,所以细节密度高、判断有立场,读到“这里为什么要这样设计”时往往能给出取舍理由,而不是转述文档。第2版新增了移动端事件、React 组件方案与性能墙等内容,把 jQuery 时代与 MVVM 时代串成一条线,读者能看清前端框架三十年(编者按:实为二十余年)演化中哪些问题始终没变。需要提醒的是,本书示例大量基于 ES5 时代的写法与作者的 avalon 体系,对只写 React/Vue 业务代码、且不熟悉原型链与兼容性处理的读者会有门槛;把它当作“读懂老框架源码”的钥匙,体验最好。

适合谁读

适合

  • 有一到三年经验、想弄清框架底层实现的前端开发者
  • 需要维护或二次开发 jQuery 类老项目的工程师
  • 准备面试、想系统补足 JavaScript 语言与 DOM 底层知识的人
  • 计算机相关专业高年级学生与培训机构的进阶课程学员
  • 对框架设计方法论感兴趣、打算自研内部组件库的技术负责人

不适合

  • 零基础读者:书中默认你熟悉 JavaScript 语法与 DOM 操作
  • 只想学 React 或 Vue 业务写法、不关心实现原理的人
  • 期望全书基于 ES6+ 与 TypeScript 现代语法的读者,本书示例仍以 ES5 为主

阅读建议

  1. 按章节顺序读前三章打底,之后再按兴趣跳读选择器、事件、模板等重点章节,不必逐页死磕。
  2. 读每个模块时打开对应开源框架源码对照,边读边在控制台复现作者的最小实现。
  3. 第2版与第1版章节差异较大,若两版都在手,先读第2版的移动端事件与组件章节。
  4. 遇到兼容性代码不必逐条记忆,重点理解“为什么要做特征侦测”这一层设计思路。

出版社简介

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

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

目录

  1. 第1章 种子模块(模块化、功能介绍、对象扩展、数组化、类型的判定、domReady、无冲突处理、总结)
  2. 第2章 语言模块(字符串的扩展与修复:repeat、byteLen、pad、quote、trim与空白;数组、数值、函数、日期的扩展与修复)
  3. 第3章 浏览器嗅探与特征侦测(浏览器判定、document.all趣闻、事件的支持侦测、样式的支持侦测、jQuery一些常用特征的含义)
  4. 第4章 类工厂(JavaScript对类的支撑、各种类工厂的实现:P.js、JS.Class、simple-inheritance、def 等)
  5. 第5章 选择器引擎
  6. 第6章 节点模块
  7. 第7章 数据缓存模块
  8. 第8章 样式模块
  9. 第9章 属性模块
  10. 第10章 事件系统(PC端与移动端事件、jQuery的事件系统)
  11. 第11章 异步模型
  12. 第12章 数据交互模块(一个完整的Ajax实现)
  13. 第13章 动画引擎
  14. 第14章 MVVM与前端模板(静态模板、MVVM的动态模板)
  15. 第15章 性能墙与复杂墙、组件(jQuery时代的组件方案、avalon2的组件方案、react的组件方案)
  16. 第16章 API设计、插件化与框架展望

常见问题

这本书和《JavaScript高级程序设计》有什么区别?
《高级程序设计》讲语言与浏览器 API 的全面用法,属于“学会用”;本书讲框架内部如何组织这些能力,属于“学会造”。建议先用前者打基础,再用本书进阶。
第1版和第2版应该买哪一版?
第2版(ISBN 9787115464293,2017 年,457 页)内容更完整,新增移动端事件、React 组件方案、性能墙等章节,建议优先选第 2 版;第 1 版为 2014 年 437 页版本。
书里的技术是不是已经过时了?
示例确实以 ES5 与 jQuery 时代写法为主,但模块化、事件模型、模板编译、组件化这些问题的设计思路并不过时,读懂老框架反而更容易看清现代框架在解决什么。
需要先读完 jQuery 源码吗?
不需要。书中会给出关键片段与作者自己的实现,先具备 JavaScript 原型、闭包、DOM 事件的基本功即可跟上大部分章节。
作者司徒正美是谁?
本名钟钦成,国内知名 JavaScript 专家,MVVM 框架 avalon 的作者,长期在前端框架与组件化方向做实践与分享,本书是其代表作。

读者评论

查询本书

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

作者简介

司徒正美 作者

司徒正美是国内前端开发领域的技术作者,公开资料有限,其已知代表作是《JavaScript框架设计(第2版)》。该书属于编程设计类作品,围绕JavaScript框架的设计思路与实现方法展开,面向希望深入理解前端框架底层机制的学习者与开发者。从题材上看,作者关注的是框架层面的抽象与工程实践,而非零散语法技巧的罗列,写作上偏向以设计原理带动代码实现,帮助读者建立对框架结构的整体认识。由于库内仅收录其作品一种,其生平背景、职业经历等信息暂无从查证,读者可结合该书内容了解其在JavaScript框架设计方面的技术积累与表达特点。

同一作者

同类高分