-
-
- Node.js Web全栈开发实战/好程序员成长丛书
-
- 作者:编者:千锋教育高教产品研发部|责编:黄芝//薛阳
- 出版社:清华大学
- ISBN:9787302595342
-
售价:23.6
-
内容大纲
本书主要介绍了Node.js在Web全栈开发领域的应用实践,分别从Node.js基础语法、模块化、服务器搭建、Express框架等方面由浅入深地进行讲解。在企业级应用开发方面也有着重讲解,例如,MongoDB数据库的操作、Ajax异步请求与同源策略、Node.js的会话跟踪技术的应用、Node.js爬虫程序的实现等。
在企业开发中,Node.js的应用越来越广泛。像Yahoo、Microsoft等公司的很多应用都已经迁移到Node.js了,国内的阿里巴巴、网易、腾讯、新浪、百度等公司的很多线上产品也纷纷改用Node.js开发,并取得了很好的效果。
本书从基础入门到项目实战,为读者逐步揭开Node.js的神秘面纱,使读者更好地理解、学习Node.js,并能够使用Node.js开发出优秀的Web应用。无论你是一个前端开发的新手,还是一个编程高手,这本书都值得去认真阅读。
-
作者介绍
-
目录
第1章 初识Node.js
1.1 Node.js简介
1.1.1 Node.js的发展历程
1.1.2 Node.js的特点
1.1.3 为什么要使用Node.js
1.2 Node.js运行环境安装
1.2.1 在Windows上安装Node
1.2.2 在Linux上安装Node
1.2.3 在macOS上安装Node
1.3 NPM依赖管理工具
1.3.1 NPM简介
1.3.2 NPM的使用
第2章 Node.js编程基础
2.1 Node.js快速入门
2.1.1 Node.js基础
2.1.2 创建第一个Node应用
2.2 模块化开发
2.2.1 模块化的概念
2.2.2 CommonJS规范
2.2.3 Node.js中的模块化
2.2.4 Node.js系统模块
2.2.5 第三方模块
第3章 异步I/O
3.1 什么是异步I/O
3.1.1 为什么要使用异步I/O
3.1.2 异步I/O与非阻塞I/O
3.2 Node.js的异步I/O
3.2.1 事件循环
3.2.2 观察者模式
3.2.3 请求对象
3.2.4 执行回调
3.3 非I/O的异步API
3.3.1 定时器
3.3.2 process.next Tick()函数
第4章 Stream
4.1 Stream的概念
4.1.1 Stream简介
4.1.2 Stream实现的过程
4.1.3 Stream应用场景
4.2 使用Stream操作文件
4.2.1 Node.js读写文件
4.2.2 使用Stream读写文件
4.2.3 Stream对性能的影响
4.3 readline逐行读取
4.4 Buffer二进制流
4.4.1 什么是二进制流
4.4.2 使用Buffer提升性能
第5章 Node.js Web服务器开发
5.1 使用Node.js搭建Web服务器
5.1.1 http模块
5.1.2 事件驱动编程
5.1.3 路由
5.1.4 静态资源服务
5.2 请求与响应对象
5.2.1 URL的组成部分
5.2.2 HTTP请求方法
5.2.3 请求报头
5.2.4 响应报头
5.2.5 请求体
5.2.6 参数
5.2.7 请求对象
5.2.8 响应对象
第6章 Express框架
6.1 Express框架简介
6.2 Express框架安装与配置
6.2.1 安装Express
6.2.2 Express目录结构
6.2.3 Express的路由管理
6.2.4 Express的视图管理
6.3 Express中间件
6.3.1 中间件的概念
6.3.2 Express中间件的使用
6.3.3 自定义Express中间件
6.3.4 常用的中间件
6.4 Express中的MVC
6.4.1 MVC概述
6.4.2 模型
6.4.3 视图模型
6.4.4 控制器
第7章 静态资源
7.1 网站中的静态资源
7.1.1 什么是静态资源
7.1.2 静态资源对性能的影响
7.2 Web应用中的静态资源
7.2.1 静态映射
7.2.2 视图中的静态资源
7.2.3 CSS中的静态资源
7.3 搭建静态资源服务器
7.3.1 什么是静态资源服务器
7.3.2 使用Node搭建静态资源服务器
第8章 Handlebars
8.1 模板引擎简介
8.1.1 什么是模板引擎
8.1.2 传统JavaScript模板
8.1.3 如何选择模板引擎
8.2 Handlebars模板引擎
8.2.1 Handlebars简介
8.2.2 Handlebars的安装
8.2.3 Handlebars的特性
8.3 Handlebars的使用
8.3.1 注释
8.3.2 块级表达式
8.3.3 服务器端模板
8.3.4 视图和布局
8.3.5 在Express中使用布局
8.3.6 客户端Handlebars
第9章 MongoDB数据库
9.1 MongoDB数据库简介
9.1.1 什么是数据库
9.1.2 数据库的优点
9.1.3 MongoDB数据库重要概念
9.2 MongoDB数据库环境搭建
9.2.1 MongoDB数据库的下载与安装
9.2.2 MongoDB Compass可视化工具
9.2.3 启动MongoDB服务
9.3 mongoose模块
9.3.1 mongoose模块简介
9.3.2 Schema模式对象
9.3.3 Model模型对象
9.3.4 Document文档对象
9.4 MongoDB模块
9.4.1 连接数据库
9.4.2 创建集合
9.4.3 数据库操作
第10章 Ajax异步请求
10.1 Ajax基础
10.1.1 传统网站中存在的问题
10.1.2 Ajax概述
10.1.3 Ajax的使用场景
10.1.4 Ajax的优点
10.1.5 Ajax的缺点
10.2 Ajax的工作原理
10.2.1 Ajax运行原理
10.2.2 XMLHttpRequest对象
10.2.3 XMLHttpRequest对象的常用方法
10.3 Ajax的实现步骤
10.3.1 创建XMLHttpRequest对象
10.3.2 设置请求方式
10.3.3 调用回调函数
10.3.4 发送HTTP请求
10.3.5 Ajax的缓存问题
10.4 浏览器同源策略
10.4.1 什么是同源策略
10.4.2 同源策略的限制
10.4.3 同源策略的解决方案
10.5 RESTful风格API
10.5.1 RESTful API概述
10.5.2 为什么要使用RESTful结构
10.5.3 RESTful API的实现
第11章 会话跟踪
11.1 会话跟踪概述
11.1.1 HTTP请求的特点
11.1.2 什么是会话跟踪
11.1.3 会话跟踪的用途
11.2 Express中的会话跟踪
11.2.1 Express中的Cookie
11.2.2 Express中的Session
第12章 Node.js实现网络爬虫
12.1 网络爬虫概述
12.1.1 什么是网络爬虫
12.1.2 网络爬虫的实现原理
12.1.3 Node.js实现网络爬虫的优势
12.2 基于Node实现的爬虫程序
12.2.1 安装依赖包
12.2.2 实现抓取数据
12.2.3 实现爬虫的方法
第13章 网络编程
13.1 Node构建TCP服务
13.1.1 TCP
13.1.2 构建TCP服务器
13.2 Node构建UDP服务
13.2.1 UDP协议
13.2.2 创建UDP套接字
13.2.3 创建UDP服务器和客户端
13.3 Node构建HTTP服务
13.3.1 初识HTTP协议
13.3.2 Node中的http模块
13.4 Node构建WebSocket服务
13.4.1 什么是WebSocket
13.4.2 WebSocket实例的属性与方法
13.4.3 构建WebSocket服务
第14章 项目实战:Express开发投票管理系统
14.1 项目概述
14.1.1 开发环境
14.1.2 项目结构
14.2 数据库设计
14.2.1 连接数据库
14.2.2 创建Schema文档对象
14.2.3 封装CRUD函数
14.2.4 封装文件上传业务逻辑
14.3 配置前端开发环境
14.3.1 静态文件管理
14.3.2 安装依赖
14.4 后台功能模块开发
14.4.1 系统用户登录
14.4.2 系统用户管理
14.4.3 候选对象管理
14.4.4 投票主题管理
14.4.5 投票环节管理
14.4.6 投票统计管理
14.5 网站前台布局