作品简介

本书内容涵盖了Node.js高并发的原理、源码分析以及使用Node.js开发应用所需要的不同层面的技术实践。具体来讲,本书包括Node.js异步机制(配以源码分析)、编辑与调试、测试技术、Docker部署、模块机制、V8引擎与代码优化、Promise和ES6 Generator、LoopBack开源框架、使用C++编写扩展、JavaScript严格模式、编码规范等内容。在LoopBack章节,本书详细介绍了使用此框架开发企业级Web应用的步骤,帮助读者迅速掌握使用这个强大框架的诀窍。最后一章详细介绍了编写不同类型的C++模块的知识,并对堆内存管理等内容做了深入探讨。本书适合所有前端和后端的开发人员阅读。

尤嘉,东南大学计算机硕士,从事软件研发工作多年,先后就职于奇虎和猎豹移动。做过基于chromium的浏览器,也从事过WebKit与V8方面的研发工作。目前从事P2P与区块链方面的项目研发。

作品目录

  • 内容简介
  • 前言
  • 致谢
  • 第1章 Node异步编程范式
  • 1.1 同步与异步的比较
  • 1.2 Node异步的实现
  • 1.2.1 HTTP请求——完全异步的例子
  • 1.2.2 本地磁盘I/O——多线程模拟
  • 1.3 事件驱动
  • 参考资料
  • 第2章 搭建自己的开发环境
  • 2.1 Node的编译与安装
  • 2.2 开发与调试
  • 2.3 单元测试
  • 2.3.1 Mocha测试框架
  • 2.3.2 TDD风格
  • 2.3.3 BDD风格
  • 2.3.4 生成不同形式的测试报告
  • 2.3.5 代码覆盖率工具Istanbul
  • 参考资料
  • 第3章 使用Docker部署Node服务
  • 3.1 Docker基础
  • 3.2 在Docker中运行Node
  • 3.3 导出配置好的容器
  • 参考资料
  • 第4章 Node模块
  • 4.1 程序入口
  • 4.2 VM模块
  • 4.3 模块加载与缓存
  • 4.4 模块分类
  • 4.5 正确导出模块
  • 4.6 小心使用全局变量
  • 第5章 V8引擎
  • 5.1 JavaScript代码的编译与优化
  • 5.1.1 即时编译
  • 5.1.2 隐藏类
  • 5.1.3 内联缓存
  • 5.1.4 优化回退
  • 5.1.5 写出更具亲和性的代码
  • 5.1.6 借助TypeScript
  • 5.2 垃圾回收与内存控制
  • 5.2.1 V8的垃圾回收算法
  • 5.2.2 使用Buffer
  • 5.2.3 避免内存泄漏
  • 参考资料
  • 第6章 Promise对象
  • 6.1 Promise的含义
  • 6.2 基本用法
  • 6.3 then的链式写法
  • 6.4 bluebird库
  • 参考资料
  • 第7章 用ES6 Generator解决回调金字塔
  • 7.1 Node异步实现流程
  • 7.2 用Generator实现异步调用与多并发
  • 7.3 严格模式下运行
  • 7.4 理解执行过程
  • 7.5 本章结语
  • 第8章 LoopBack开源框架
  • 8.1 安装与运行
  • 8.2 路由与权限控制
  • 8.3 添加新模型
  • 8.4 初始化数据库
  • 8.5 钩子机制
  • 8.6 中间件
  • 8.7 模型关系
  • 8.8 使用cluster模式运行服务
  • 参考资料
  • 第9章 编写C++扩展
  • 9.1 使用C++编写扩展模块
  • 9.1.1 导出对象
  • 9.1.2 导出函数
  • 9.1.3 导出构造函数
  • 9.2 线程模型与CPU密集型任务
  • 9.3 线程对象
  • 9.4 本章结语
  • 参考资料
  • 附录
  • 附录A JavaScript严格模式
  • 附录B JavaScript编码规范
  • 参考资料
展开全部