书籍详情
Node Web开发
作者:(美) 赫伦 (Herron,D.) 著 ,鄢学鵾, 吴天豪, 廖健 译
出版社:人民邮电出版社
出版时间:2012-04-01
ISBN:9787115278326
定价:¥35.00
购买这本书可以去
内容简介
作为服务器端的JavaScript解释器,Node是一个轻量高效的开发平台,用于构建响应快速、高度可扩展的Web应用。它使用事件驱动和非阻塞的I/O模型,非常适合开发数据密集、对实时响应要求高的分布式应用,在微软、eBay、LinkedIn、雅虎等世界知名公司均有成功的应用。 本书是Node开发基础教程,通过大量示例介绍如何使用HTTP服务器和客户端对象、Connect和Express应用框架、异步执行算法,以及如何结合使用SQL和MongoDB数据库。另外,本书同时针对开发和部署环境给出了实用的Node安装建议,介绍了HTTP服务器和客户端应用的开发,阐述了很多Node使用方式,包括在应用中使用数据库存储引擎,以及在有无Connect/ExpressWeb应用框架的情况下开发网站的方法。本书还介绍了Node的CommonJS模块系统,帮助开发人员实现一些重要的面向对象设计方案。本书适合具有一定JavaScript和Web应用开发基础知识、打算使用服务器端JavaScript开发高性能Web应用的开发人员阅读。本书内容包括: 服务器端JavaScript对于Web应用开发的作用 使用Node时,针对性能和吞吐量作出成熟的架构选择? 为开发和部署服务器端Web应用安装和使用Node Connect和Express应用框架的使用? 在应用中设置SQL或MongoDB数据库系统区分并评估同步算法和异步算法?
作者简介
David Herron,软件开发人员和软件质量工程师,在硅谷从业20多年,目前在雅虎担任质量工程小组的架构师,管控公司基于Node开发的Web应用平台的质量。 他曾为Sun公司主管工程师,并作为Java SE质量工程小组的架构师负责开发自动化测试工具(包括现在广泛用于GUI自动测试软件的AWT Robot类),期间参与了OpenJDK和JDK-Distros项目的启动,举办了世界性的Mustang Regressions大赛,让Java开发者社区寻找Java 1.6的bug。 任职Sun公司之前,他曾为VXtreme公司开发视频流处理工具(Windows Media Player的前身),在Wollongong集团从事电子邮件客户端和服务器软件的开发,加入了互联网工程任务组,负责改进与电子邮件相关的协议。 鄢学鵾,阿里云云手机开发者运营负责人,曾在网易做过UI设计师,在雅虎中国领导过前端团队,在口碑网领导过UED团队,还担任D2前端技术论坛顾问。对Web标准、前端开发模式、性能优化和自动化有较深入的研究。目前专注于从Mobile到PC领域的设计、技术和业务间的结合,常用ID:秦歌、三七。其译著有《JavaScript语言精粹》和《高性能网站建设进阶指南:Web开发者性能优化最佳实践》,个人博客是dancewithnet.com,Twitter账号是@ kavenyan。 吴天豪,阿里云计算前端开发工程师,w3ctech杭州站负责人,w3ctech.com内容贡献者,负责过口碑网产品线的开发、基于移动浏览器的Web App开发,致力于构建快速、高效、可访问性高的Web应用。 廖健,阿里云资深前端开发工程师,有多年Flash平台开发经验,喜欢奔放的脚本语言,曾在D2论坛和HTML5研究小组线下沙龙做过技术分享,目前主要研究和实践Web技术在移动平台上的应用。
目录
第1章 Node入门 1
1.1 Node能做什么 1
1.2 为什么要使用Node 3
1.2.1 架构问题:线程,还是异步事件驱动 4
1.2.2 性能和利用率 5
1.2.3 服务器利用率、成本和绿色Web托管服务 6
1.3 Node、Node.js还是Node.JS 7
1.4 小结 7
第2章 安装并配置Node 8
2.1 系统要求 8
2.2 在符合POSIX标准的系统上安装 9
2.3 在Mac OS X上安装开发者工具 9
2.3.1 在home目录下安装 9
2.3.2 在系统级目录下安装Node 11
2.3.3 在Mac OSX上使用MacPorts安装 12
2.3.4 在Mac OSX上使用homebrew安装 12
2.3.5 在Linux上使用软件包管理系统安装 12
2.3.6 同时安装并维护多个Node 13
2.4 验证安装成功与否 14
2.4.1 Node命令行工具 14
2.4.2 用Node运行简单的脚本 15
2.4.3 用Node启动服务器 16
2.5 安装npm——Node包管理器 16
2.6 系统启动时自动启动Node服务器 17
2.7 小结 22
第3章 Node模块 23
3.1 什么是模块 23
3.1.1 Node模块 24
3.1.2 Node解析require('module')的方式 24
3.2 Node包管理器 28
3.2.1 npm包的格式 29
3.2.2 查找npm包 30
3.2.3 使用npm命令 31
3.2.4 Node包版本的标识和范围 38
3.2.5 CommonJS模块 39
3.3 小结 40
第4章 几种典型的简单应用 41
4.1 Math Wizard 41
4.2 不依赖框架的实现 41
4.2.1 路由请求 42
4.2.2 处理URL查询参数 43
4.2.3 乘法运算 44
4.2.4 其他数学函数的执行 45
4.2.5 扩展Math Wizard 48
4.2.6 长时间运行的运算(斐波那契数) 48
4.2.7 还缺什么功能 51
4.2.8 使用Connect框架实现MathWizard 52
4.2.9 安装和设置Connect 52
4.2.10 使用Connect 53
4.3 使用Express框架实现MathWizard 55
4.3.1 准备工作 55
4.3.2 处理错误 59
4.3.3 参数化的URL和数据服务 60
4.4 小结 64
第5章 简单的Web服务器、EventEmitter和HTTP客户端 65
5.1 通过EventEmitter发送和接收事件 65
5.2 HTTPSniffer——监听HTTP会话 67
5.3 基本的Web服务器 69
5.4 MIME类型和MIME npm包 78
5.5 处理cookie 79
5.6 虚拟主机和请求路由 79
5.7 发送HTTP客户端请求 79
5.8 小结 81
第6章 存取数据 83
6.1 Node的数据存储引擎 83
6.2 SQLite3——轻量级的进程内SQL引擎 83
6.2.1 安装SQLite 3 83
6.2.2 用SQLite3实现便签应用 84
6.2.3 在Node中使用其他SQL数据库 95
6.3 Mongoose 96
6.3.1 安装Mongoose 96
6.3.2 用Mongoose实现便签应用 97
6.3.3 对MongoDB数据库的其他支持 102
6.4 如何实现用户验证 102
6.5 小结 104
1.1 Node能做什么 1
1.2 为什么要使用Node 3
1.2.1 架构问题:线程,还是异步事件驱动 4
1.2.2 性能和利用率 5
1.2.3 服务器利用率、成本和绿色Web托管服务 6
1.3 Node、Node.js还是Node.JS 7
1.4 小结 7
第2章 安装并配置Node 8
2.1 系统要求 8
2.2 在符合POSIX标准的系统上安装 9
2.3 在Mac OS X上安装开发者工具 9
2.3.1 在home目录下安装 9
2.3.2 在系统级目录下安装Node 11
2.3.3 在Mac OSX上使用MacPorts安装 12
2.3.4 在Mac OSX上使用homebrew安装 12
2.3.5 在Linux上使用软件包管理系统安装 12
2.3.6 同时安装并维护多个Node 13
2.4 验证安装成功与否 14
2.4.1 Node命令行工具 14
2.4.2 用Node运行简单的脚本 15
2.4.3 用Node启动服务器 16
2.5 安装npm——Node包管理器 16
2.6 系统启动时自动启动Node服务器 17
2.7 小结 22
第3章 Node模块 23
3.1 什么是模块 23
3.1.1 Node模块 24
3.1.2 Node解析require('module')的方式 24
3.2 Node包管理器 28
3.2.1 npm包的格式 29
3.2.2 查找npm包 30
3.2.3 使用npm命令 31
3.2.4 Node包版本的标识和范围 38
3.2.5 CommonJS模块 39
3.3 小结 40
第4章 几种典型的简单应用 41
4.1 Math Wizard 41
4.2 不依赖框架的实现 41
4.2.1 路由请求 42
4.2.2 处理URL查询参数 43
4.2.3 乘法运算 44
4.2.4 其他数学函数的执行 45
4.2.5 扩展Math Wizard 48
4.2.6 长时间运行的运算(斐波那契数) 48
4.2.7 还缺什么功能 51
4.2.8 使用Connect框架实现MathWizard 52
4.2.9 安装和设置Connect 52
4.2.10 使用Connect 53
4.3 使用Express框架实现MathWizard 55
4.3.1 准备工作 55
4.3.2 处理错误 59
4.3.3 参数化的URL和数据服务 60
4.4 小结 64
第5章 简单的Web服务器、EventEmitter和HTTP客户端 65
5.1 通过EventEmitter发送和接收事件 65
5.2 HTTPSniffer——监听HTTP会话 67
5.3 基本的Web服务器 69
5.4 MIME类型和MIME npm包 78
5.5 处理cookie 79
5.6 虚拟主机和请求路由 79
5.7 发送HTTP客户端请求 79
5.8 小结 81
第6章 存取数据 83
6.1 Node的数据存储引擎 83
6.2 SQLite3——轻量级的进程内SQL引擎 83
6.2.1 安装SQLite 3 83
6.2.2 用SQLite3实现便签应用 84
6.2.3 在Node中使用其他SQL数据库 95
6.3 Mongoose 96
6.3.1 安装Mongoose 96
6.3.2 用Mongoose实现便签应用 97
6.3.3 对MongoDB数据库的其他支持 102
6.4 如何实现用户验证 102
6.5 小结 104
猜您喜欢