书由浅入深,全面、系统地介绍了Node.js开发技术。书中提供了大量有针对性的实例,供读者实践学习,同时提供了大量的实践练习题及详尽的解答,帮助读者进一步巩固和提高。本书重在代码实践,阅读时应多注重实践编程。本书提供8小时配套教学视频及实例源代码,便于读者高效、直观地学习。 本书共分为11章。涵盖的主要内容有:Node.js的概念、应用场景、环境搭建和配置、异步编程;Node.js的模块概念及应用、Node.js的设计模式;HTTP简单服务的搭建、Node.js静态资源管理、文件处理、Cookie和Session实践、Crypto模块加密、Node.js与Nginx配合;UDP服务器的搭建、Node.js与PHP之间合作;Node.js的实现机制、Node.js的原生扩展与应用;Node.js的编码习惯;Node.js操作MySQL和MongoDB;基于Node.js的Myweb框架的基本设计架构及实现;利用Myweb框架实现一个简单的Web聊天室;在线聊天室案例和在线中国象棋案例的实现;Node.js的日志模块、curl模块、crontab模块、forever模块、xml模块和邮件发送模块等应用工具。 本书非常适合从事编程开发的学生、教师、广大科研人员和工程技术人员研读。建议阅读本书的读者对JavaScript的语法和PHP的相关知识有一定的了解。当然,如果你是初学者,本书也是一本难得的参考书。
第1章Node.js基础知识
1.1概述
1.1.1Node.js是什么
1.1.2Node.js带来了什么
1.2Node.js配置开发
1.2.1Windows配置
1.2.2Linux配置
1.2.3HelloWorld
1.2.4常见问题
1.3异步编程
1.3.1同步调用和异步调用
1.3.2回调和异步调用
1.3.3获取异步函数的执行结果
1.4本章实践
1.5本章小结
第2章模块和NPM
2.1什么是模块
2.1.1模块的概念
2.1.2Node.js如何处理模块
2.1.3Node.js实现Web解析DNS
2.1.4Node.js重构DNS解析网站
2.1.5exports和module.eXports
2.2NPM简介
2.2.1NPM和配置
2.2.2Express框架
2.2.3jade模板
2.2.4forever模块
2.2.5socket.io模块
2.2.6request模块
2.2.7Formidable模块
2.2.8NPM模块开发指南
2.3Node.js设计模式
2.3.1模块与类
2.3.2Node.js中的继承
2.3.3单例模式
2.3.4适配器模式
2.3.5装饰模式
2.3.6工厂模式
2.4本章实践
2.5本章小结
第3章Node.js的Web应用
3.1HTTP服务器
3.1.1简单的HTTP服务器
3.1.2路由处理
3.1.3GET和POST
3.1.4GET方法实例
3.1.5POST方法实例
3.1.6HTTP和HTTPS模块介绍
3.2Node.js静态资源管理
3.2.1为什么需要静态资源管理
3.2.2Node.js实现简单静态资源管理
3.2.3静态资源库设计
3.2.4静态文件的缓存控制
3.3文件处理
3.3.1FileSystem模块介绍
3.3.2图片和文件上传
3.3.3jade模板实现图片上传展示功能
3.3.4上传图片存在的问题
3.3.5文件读写
3.4Cookie和Session
3.4.1Cookie和Session
3.4.2Session模块实现
3.4.3Session模块的应用
3.5Crypto模块加密
3.5.1Crypto介绍
3.5.2Web数据密码的安全
3.5.3简单加密模块设计
3.6Node.js+INginx
3.6.1Nginx概述
3.6.2Nginx的配置安装
3.6.3如何构建
3.7 文字直播实例
3.7.1 系统分析
3.7.2 重要模块介绍
3.8 扩展阅读
3.9 本章实践
3.10 本章小结
第4章 Node.js高级编程
4.1 构建UDP服务器
4.1.1 UDP 模块概述
4.1.2 UDP Server构建
4.2 UDP服务器应用
4.2.1 应用分析介绍
4.2.2 UDP Server端(图片处理服务器)实现
4.2.3 UDP Client端(Web Server)
4.2.4 Jade页面实现
4.2.5 应用体验
4.3 Node.js与PHP合作
4.3.1 UDP方式
4.3.2 脚本执行
4.3.3 HTTP方式
4.3.4 三种方式的比较
4.4 本章实践
4.5 本章小结
第5章 深入Node.js
5.1 Node.js的相关实现机制
5.2 Node.js原生扩展
5.2.1 Node.js扩展开发基础V8
5.2.2 Node.js插件开发介绍
5.3 Node.js异步扩展开发与应用
5.4 本章实践
5.5 本章小结
第6章 Node.js编码习惯
6.1 Node.js规范
6.1.1 变量和函数命名规范
6.1.2 模块编写规范
6.1.3 注释
6.2 Node.js异步编程规范
6.2.1 Node.js的异步实现
6.2.2 异步函数的调用
6.2.3 Node.js异步回调深度
6.2.4 解决异步编程带来的麻烦
6.3 异常逻辑的处理
6.3.1 require模块对象不存在异常
6.3.2 对象中不存在方法或者属性时的异常
6.3.3 异步执行的for循环异常
6.3.4 利用异常处理办法优化路由
6.3.5 异常情况汇总
6.4 本章实践
6.5 本章小结
第7章 Node.js与数据库
7.1 两种数据库介绍
7.1.1 MySQL介绍
7.1.2 MongoDB模块介绍
7.2 Node.js与MySQL
7.2.1 MySQL安装配置应用
7.2.2 MySQL数据库接口设计
7.2.3 数据库连接
7.2.4 数据库插入数据
7.2.5 查询一条数据记录
7.2.6 修改数据库记录
7.2.7 删除数据库记录
7.2.8 数据条件查询
7.3 Node.js与MongoDB
7.3.1 MongoDB的安装以及工具介绍
7.3.2 MongOD的启动运行方法
7.3.3 MongoDB的启动运行
7.3.4 MongoDB数据库接口设计
7.3.5 数据插入
7.3.6 数据修改
7.3.7 查询一条数据
7.3.8 删除数据
7.3.9 查询数据
7.4 MySQL与MongoDB性能
7.4.1 测试工具及测试逻辑
7.4.2 MySQL性能测试代码
7.4.3 MongoDB性能测试代码
7.4.4 性能测试数据分析
7.5 本章实践
7.6 本章小结
第8章 MyWeb框架介绍
8.1 MyWeb框架介绍
8.1.1 MyWeb框架涉及的应用
8.1.2 MyWeb框架应用模块
8.2 MyWeb源码架构
8.2.1 框架MVC设计图
8.2.2 框架文件结构
8.2.3 扩展阅读之更快地了解新项目
8.3 框架源码分析
8.3.1 框架入口文件模块
8.3.2 路由处理模块
8.3.3 Model层基类
8.3.4 Controller层基类
8.4 本章实践
8.5 本章小结
第9章 框架应用MyChat
9.1 编码前的准备
9.1.1 应用分析
9.1.2 应用模块
9.1.3 功能模块设计
9.2 系统的编码开发
9.2.1 Model层
9.2.2 Controller层
9.2.3 View层
9.3 项目总结
9.3.1 forever启动运行项目
9.3.2 系统应用体验
9.3.3 系统开发总结
9.4 扩展阅读之MyWeb 2.0的介绍
9.5 本章实践
9.6 本章小结
第10章 Node.js实例应用
10.1 实时聊天对话
10.1.1 系统设计
10.1.2 系统的模块设计
10.1.3 系统编码实现
10.2 联网中国象棋游戏
10.2.1 系统设计
10.2.2 系统的模块设计
10.2.3 系统编码实现
10.2.4 系统体验
10.3 本章小结
第11章 Node.js实用工具
11.1 日志模块工具
11.1.1 日志模块介绍
11.1.2 日志模块实现
11.1.3 日志模块应用
11.2 配置文件读取模块
11.2.1 配置文件解析模块介绍
11.2.2 配置文件解析模块实现
11.3 curl模块
11.3.1 curl模块介绍
11.3.2 curl模块实现
11.3.3 curl模块应用
11.4 crontab模块
11.4.1 crontab模块介绍
11.4.2 crontab模块设计实现
11.4.3 crontab模块应用
11.5 forever运行脚本
11.5.1 forever运行脚本介绍
11.5.2 forever运行脚本实现
11.5.3 forever运行脚本应用
11.6 xml模块的应用
11.6.1 xml解析模块介绍
11.6.2 xml模块设计实现
11.6.3 xml模块应用
11.7 邮件发送模块应用
11.7.1 邮件模块介绍
11.7.2 邮件模块设计实现
11.7.3 邮件模块应用
11.8 本章小结
《历史文化名城名镇名村系列:东村》内容简介:东村,古称“东园村”,这个太湖边尚存的为数不多的千年古村,历史遗存丰富,现存明
LTE语音业务及VOLTE技术详解 本书特色 本书讲解了各种可能的lte语音业务技术解决方案,同时也介绍了lte**演进技术,即所谓的5g可能采用的先进技术和演...
《设计心理学》共有六章,第一章“设计心理学概述”,梳理了设计心理学的历史和现状,着重介绍近年来设计-理最活跃的几个领域——
《无界:数字镜像世界的到来》内容简介:当真实与虚拟叠加,未来将变成机器可读的世界。镜像世界是由耶鲁大学计算机科学家大卫·盖
程序员2007精华本 上下册 本书特色 《程序员》杂志每年末精心打造的“合订本”已经形成一个品牌,得到广大《程序员》杂志的读者和其他对之感兴趣的读者的认可和喜爱...
Thepurposeofthisbookistoimpressonfriendsandfamilymembersthattheiraddictedlovedon...
《夏七酱的水彩小世界》内容简介:水彩画是用水调和透明颜料作画的一种绘画方法,简称水彩。水彩画是一种很有趣的作画方式,难点在
《钢琴基础必修教程(第五册)》内容简介:本书由上海音乐学院附中青年教师倾情呈现,全套教材共六册,每册十二课,内容编排从入门
《构建高性能Web站点》内容简介:本书围绕如何构建高性能Web站点,从多个方面、多个角度进行了全面的阐述,涵盖了Web站点性能优化的
《世纪大讲堂:科技卷》主要内容:著名讲坛,权威学者,民众话题,框架严密,百家争鸣!这里是自由的、思想的论坛;这里是思想的盛
曼纽尔·卡斯特是闻名世界的社会科学家,《网络社会-跨文化的视角》是他主编的探讨网络社会在不同文化和制度中的模式和动态的论
《P道理:ERP项目实施手记》内容简介:本书从不同层面说明了如何确保ERP项目的成功实施。这是一本以实际工作案例和工作经验为基础的
我们生活在一个信息爆炸的时代,每一分、每一秒,我们都能从电视、报纸或互联网上获得信息。我们甚至来不及思索,就已经被这些信
随着Internet的发展和普及,通信网目前也出现了革命性的转变(即从基于电话结构的标准网络转向基于IP结构的网络),并借助Intern
Railsislarge,powerful,andnew.Howdoyouuseiteffectively?Howdoyouharnessthepower?An...
数字图像水印算法及应用 内容简介 数字技术的发展使得人们在享受数字化带来便利的同时,也深陷安全隐患之中。数字图像,作为多媒体形式的主要内容,其获取、修改、传输越...
BrandsAtoZ:是一套讲述富于独立性和创造性的品牌故事的丛书.本书详细探寻了每一个被选择品牌的历史,反映了其公司文化,并展示了其
《高情商沟通力》内容简介:人是感性的动物,只会偶尔的理性,人与人沟通不是为了找一个答案,而是想要多一份理解和认同。本书的独
InCyberneticRevolutionaries,EdenMedinatellsthehistoryoftwointersectingutopianvis...
《决胜移动终端》内容简介:•在移动互联时代,拥有移动终端的消费者不再需要“去购物”,他们随时随地都“在购物”。这就给企业带来