Node·js设计模式查看源代码讨论查看历史
《Node·js设计模式》,[爱尔兰] 马里奥·卡西罗(Mario Casciaro) 著,爱飞翔 译,出版社: 中国电力出版社。
书籍是人类进步的阶梯,合理阅读使一个人完善自身的知识结构[1],全面提升人文素质[2],为走向成功奠定坚实的基础。
内容简介
《Node.js设计模式(第三版)》中使用好的办法来实现各种设计模式以创造高效且健壮的Node.js应用程序。该书首先介绍Node.js的基础知识,包括异步事件驱动架构以及基本的设计模式。然后,介绍怎样用callback(回调)、Pronuse以及async/await机制来构建异步的控制流模式。其次,介绍Node.js的stream(流)并演示stream的强大功能,使读者能充分地利用这些功能。该书分析了三大类设计模式,即创建型的设计模式、结构型的设计模式以及行为型的设计模式,并介绍了怎样在JavaScript语言及Node.js平台中充分运用这些模式。最后,书中研究了一些比较高端的概念,例如UniversalJavaScript、Node.js程序的扩展问题以及消息传递模式等,以帮助读者打造企业级的分布式应用程序。 《Node.js设计模式(第三版)》适合已了解Node.js技术,同时希望在程序的效率、设计及可扩展程度方面有所提高的开发者。阅读该书需要读者掌握Web应用程序、Web Service、数据库与数据结构方面的开发技术。
目录
前言
第1章 Node.js平台
1.1 Node.js开发理念
1.1.1 小核心
1.1.2 小模块
1.1.3 小接触面(小暴露面)
1.1.4 简单实用
1.2 Node.js的工作原理
1.2.1 I/O
是慢速操作
1.2.2 阻塞式I/O
1.2.3 非阻塞式的I/0
1.2.4 事件多路分离
1.2.5reactor模式
1.2.6Node.js的I/O引擎-Libuv
1.2.7 Node.js的全套结构
1.3 Node.js平台之中的JavaScript
1.3.1 放心地使用最新版的JavaScript
1.3.2 模块系统
1.3.3 访问操作系统中的各项服务
1.3.4 运行原生代码
1.4 小结
第2章 模块系统
2.1 为什么需要模块
2.2 JavaScript与Node.js的模块系统
2.3 模块系统及其模式
2.4 CommonJS模块
2.4.1 自制的模块加载器
2.4.2 定义模块
2.4.3 module.exports与exports
2.4.4require函数是同步函数
2.4.5 模块解析算法
2.4.6 模块缓存
2.4.7 循环依赖
2.5 定义模块所用的模式
2.5.1 命名导出模式
2.5.2 函数导出模式
2.5.3 类导出模式
2.5.4 实例导出模式
2.5.5 通过monkey patching模式修改其他模块或全局作用域
2.6 ECMAScript模块(ESM)
2.6.1 在Node.js平台中使用ESM
2.6.2 命名导出模式与命名引入
2.6.3 默认导出与默认引入
2.6.4 混用命名导出与默认导出
2.6.5 模块标识符
2.6.6 异步引入
2.6.7 详细解释模块的加载过程
2.6.8 修改其他模块
2.7 ESM与CommonJS之间的区别以及交互使用技巧
2.7.1 ESM是在严格模式下运行的
2.7.2 ESM不支持CommonJS提供的某些引用
2.7.3 在其中一种模块系统里面使用另一种模块
2.8 小结
第3章 回调与事件
3.1 Callback(回调)模式
3.1.1 continuation-passing风格(CPS)
3.1.2 某个函数究竟是同步函数,还是异步函数?
3.1.3 在Node.js里面定义回调的惯例
3.2 0bserver(观察者)模式
3.2.1 EventEmitter
3.2.2 创建并使用EventEmitter
……
第4章 利用回调实现异步控制流模式
第5章 利用Promise与async/await实现异步控制流模式
第6章 用Stream编程
第7章 创建型的设计模式
第8章 结构型的设计模式
第9章 行为型的设计模式
第10章 用Universal JavaScript开发Web应用程序
第11章 高级技巧
第12章 用架构模式实现扩展
第13章 消息传递与集成模式
参考文献
- ↑ 什么是时代的知识结构——汤胜天,搜狐,2016-11-04
- ↑ 陈丹青:何谓人文素质教育? ,搜狐,2017-11-24