书由浅入深,全面、系统地介绍了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 本章小结
《贡布里希的艺术史论》内容简介:贡布里希是20世纪积极推动欧美学术界从艺术的视觉研究转向艺术文化研究的倡导者之一。在20世纪的
《儿童歌曲器乐演奏启蒙——贝司》内容简介:本书力争选用同一批曲目,使各分册既相对独立,又彼此关联。本书的亮点在于,每首曲目
《笑谈大先生》内容简介:本书收录作者近年来关于鲁迅的七次演讲文稿。虽不过数万言,却在浩瀚的鲁迅研究的边上,辟出新的境界。论
HTML是网页制作的基础语言,是每个网页制作者必须掌握的内容。XHTML1.0是一种在HTML4.0基础上优化和改进的新语言,是基于XML的应
《新型冠状病毒肺炎防护手册》内容简介:编者基于当前对新型冠状病毒肺炎的认识和防控策略,对疫情防控相关政策、法律法规、信息和
《“清”眼看世界:研究生海外社会实践成果集》内容简介:本书梳理了清华大学研究生海外社会实践近五年来的优秀实践成果,精选了来
《20世纪的中国乡村》内容简介:本书从四个部分,系统呈现20世纪中国乡村社会发展状况。第一部分,探讨中国近代社会史研究的历程、
《中国制造业重点领域技术创新绿皮书—技术路线图(2019)》内容简介:本书(以下简称“技术路线图”)围绕建设制造强国的战略任务
《乾坤衍》内容简介:熊十力哲学三部曲:《新唯识论》《体用论》《乾坤衍》。从中可以清晰看到熊十力思想的出发点和演变轨迹。熊十
《数据中台产品经理》内容简介:随着移动互联网的快速发展,“中台”纷纷在国内大小互联网企业快速落地。前有阿里云智能事业群对外
《Python面试通关宝典》内容简介:本书内容分为两篇,第1篇是Python语言面试题,第2篇是算法面试题。Python语言面试题涵盖面试通用
《赢单九问:策略销售实战秘籍》内容简介:大客户销售通常涉及人员众多、局面扑朔迷离、竞争异常激烈,要想赢单并不容易,需要销售
《中外民歌钢琴曲集 1》内容简介:从这套乐谱的功能来看,除了作为钢琴教材还可以作为多声写作和小品写作的例谱,配器课的习题集,
《坚持社会主义办学方向》内容简介:坚持社会主义办学方向是对马克思主义教育本质思想的继承和发展,反映了以习近平同志为核心的党
作为一位平面设计师,为什么一定要依赖那些已有的字体、用别人的图形——如果你能够创造自己的标志、字体和书写的话。莱斯利·凯
与以前的网站建设相比,现在的网站建设变得更加细分化。设计师的作用不再仅仅是制作视觉效果突出的图像。而是应该以项目为中心考
《10W+新媒体文案炼成记》内容简介:本书是一本新媒体文案专题训练实战手册,在微信、微商、电商、APP、头条号这5大文案写作最为火
《PaaS实现与运维管理》内容简介:《PaaS实现与运维管理:基于Mesos +Docker+ELK的实战指南》主要阐述了云计算中PaaS平台的实现与运
Forone-semestercoursesinIntroductoryBiologyfornon-majors.LifeonEarth,FifthEditio...
《智能的本质》内容简介:机器人的智慧能超越人类吗?人工智能的奇点究竟何时会到来?人类会借助人工智能实现永生吗?对于这些问题