教材
TEACHING MATERIAL

中慧科技Web开发校企合作系列教材-《 Node.js应用开发》介绍

日期:2021年7月2日

为什么选择Node.js应用开发这门技术?

Node.js是一个基于Chrome V8引擎的JavaScript运行环境,因其执行速度非常快,性能出众等特点,受到很多开发人员的青睐。Node.js 的诞生带给人们的是个大大的惊喜,传统上Web开发者,前端用JavaScript写,但是写服务器端代码的时候还必须用另外一种语言,类似Ruby/Java /PHP等。但是Node.js出现之后,JavaScript前后通吃了。开发人员可以使用Node.js快速搭建服务端。并且,Node.js诞生以后,类似React/ Vuejs这样的前端框架的开发环境也变得非常强大,Node.js是这些开发环境运行的基础。

《Node.js应用开发》            

【ISBN】978-7-115-56963-9

  唐小燕  刘洪武

【副主编】  虞菊花  王洪海  王绪峰

【出版时间】2021年 8月  

内容摘要

该教材共有10章,内容包括Node.js认知、模块机制、Node.js异步编程、Buffer缓存区和文件系统、构建Web应用、Express框架、Express模板引擎、数据库应用开发、Koa框架、项目优化及线上部署等,不仅介绍Node.js开发的基础知识,而且精心设计了大量案例。读者通过该教材可以快速地掌握Node.js开发流程和方法,掌握Node.js的开发环境部署、模块化开发、内置模块使用等基础知识,还能够运用Express框架完成一个基本的Web项目开发,并实现项目的前后台分离;并了解Koa框架的开发方式;完成基本项目的构建和项目的打包处理、项目优化处理和完成项目的线上部署。

教材目录

第1章 Node.js认知                     

1.1 Node.js简介

1.1.1 什么是Node.js

1.1.2 Node.js发展历史

1.1.3 Node.js特点及应用场景

1.1.4 Node.js与JavaScript的区别

1.2 Node.js环境安装

1.2.1 下载Node.js

1.2.2 安装Node.js

1.2.3 安装Node.js程序编辑环境

1.3 第一个Node.js程序

1.3.1 编写Node.js程序

1.3.2 运行Node.js程序

1.4 Node.js控制台console

1.4.1 console常用方法

1.4.2 项目实训—Console控制台使用

1.5 本章小结

习题

第2章 模块机制

2.1 什么是模块

2.1.1 模块的定义

2.1.2 模块的优点

2.1.3 模块化规范

2.1.4 项目实训—模块化输出九九乘法表

2.2 Node.js模块基础

2.2.1 模块的分类

2.2.2 自定义模块

2.2.3 项目实训—模块化实现四则混合运算

2.3 包与NPM

2.3.1 包

2.3.2 NPM

2.3.3 自定义项目包

2.3.4 CNPM和YARN安装和使用

2.3.5 项目实训—模块化实现数组排序

2.4 本章小结

习题

第3章 Node.js异步编程

3.1 回调函数

3.1.1 阻塞

3.1.2 非阻塞

3.2 异步编程

3.2.1 事件发布/订阅模式

3.2.2 Promise/Deferred模式

3.2.3 流程控制库

3.2.4 项目实训—显示天气预报数据

3.3 本章小结

习题

第4章 Buffer缓存区和文件系统

4.1 Buffer缓存区

4.1.1 Buffer简介

4.1.2 常用的Buffer类API

4.1.3 Buffer与字符编码

4.1.4 项目实训—Buffer缓存区操作

4.2 fs文件基本操作

4.2.1 fs简介

4.2.2 打开/关闭文件

4.2.3 读取/写入文件

4.2.5 删除文件

4.2.6 读取目录

4.2.7 项目实训—JSON文件数据操作

4.3 fs流

4.3.1 fs流简介

4.3.2 创建流

4.3.3 管道流

4.3.4 链式流

4.3.5 项目实训—XML文件转JSON文件

4.4 本章小结

习题

第5章 构建Web应用

5.1 HTTP协议

5.1.1 HTTP协议原理

5.1.2 请求报文

5.1.3 响应报文

5.2 http模块

5.2.1 http模块介绍

5.2.2 http服务端

5.2.3 http客户端

5.2.4 http.ServerRequest和http.request

5.2.5 项目实训—后端解决跨域

5.3 path模块和url模块

5.3.1 path模块

5.3.2 url模块

5.3.3 项目实训—为前端提供数据接口

5.4 本章小结

习题

第6章 Express框架

6.1 Express简介与安装

6.1.1 Express简介

6.1.2 Express安装

6.1.3 项目实训—搭建框架项目

6.2 路由配置

6.2.1 路由介绍

6.2.2 app级别路由

6.2.3 router级别路由

6.3 中间件使用

6.3.1 自定义中间件

6.3.2 第三方中间件

6.3.3 内置中间件

6.3.4 错误中间件

6.3.5 项目实训—中间件访问静态文件

6.4 请求与响应

6.4.1 请求对象

6.4.2 响应对象

6.5 Cookie

6.5.1 Cookie工作原理

6.5.2 Cookie的设置与获取

6.5.3 项目实训—cookie验证登录

6.6 Session

6.6.1 Session工作原理

6.6.2 Session的安装配置与设置获取

6.7 Postman接口测试

6.7.1 软件安装

6.7.2 接口测试与导出接口集

6.8 本章小结

习题

第7章 Express模板引擎

7.1 pug集成模板引擎

7.1.1 pug集成模板简介

7.1.2 pug模板文件的编译

7.1.3 pug语法

7.2 ejs模板引擎

7.2.1 ejs标签含义

7.2.2 ejs中的包含include

7.3 Express框架中集成模板引擎

7.3.1 pug模板在Express框架中的集成

7.3.2 ejs模板在Express框架中的集成

7.3.3 项目实训—渲染商品信息

7.4 本章小结

习题

第8章 数据库应用开发

8.1 连接MySQL数据库

8.1.1 安装MySQL

8.1.2 MySQL常用语句

8.1.3 连接MySQL数据库

8.1.4 数据库操作

8.1.5 项目实训—学生信息管理

8.2 连接MongoDB数据库

8.2.1 MongoDB安装与配置

8.2.2 MongoDB基本操作

8.2.3 mongoose数据库操作

8.2.4 项目实训—商品信息管理

8.3 综合项目实训—学生信息页面管理

8.4 本章小结

习题

第9章 Koa框架

9.1 Koa框架简介

9.1.1 Koa与Express的区别

9.1.2 Koa 1和Koa 2

9.1.3 安装NVM控制Node.js版本

9.2 应用程序和上下文

9.2.1 语法糖

9.2.2 HTTP服务

9.2.3 上下文(Context)

9.3 Koa路由

9.4 静态资源访问

9.5 综合项目实训—商品信息显示

9.7 本章小结

习题

第10章 项目优化及线上部署

10.1 性能优化

10.1.1 使用CDN

10.1.2 减少http请求数

10.1.3 优化图片

10.1.4 将外部脚本置底

10.1.5 使用webpack压缩打包

10.2 服务器部署和发布

10.2.1 购买服务器

10.2.2 购买域名

10.2.3 安装系统

10.2.4 设置项目环境

习题

附录

一、习题答案

二、JavaScript知识点摘要

三、参考文献

教材特色


1、内容全面、组织合理

该教材按照由浅入深的顺序,结合职业教育背景下的软件技术专业学生的特点,以碎片化“知识点”为单元,采用案例驱动、项目导向,通过理论与实践相结合的方式,便于读者在学习Node.js知识的同时进行项目实践。

2、结合实际、突出实践

该教材由企业工程师精心设计了大量示例和项目实训,体现了“教、学、做一体化”的思想,方便读者快速上手,培养读者实际操作的动手能力。示例和项目实践有详细的代码说明和实践步骤解释。

3、资源丰富、立体教学

该教材配备了丰富的立体化教学资源,包括教学课件、微课、电子教案、案例代码、实训项目指导等。附录中整理了JavaScript语言知识点摘要,方便读者查阅复习。

 4、校企合作“双元”模式开发优质教材

该教材由成都中慧科技有限公司组织,邀请实战经验丰富的IT技术专家参与教材建设,将最前沿的技术引入到教材中,保证内容新颖实用。教材主编积累了丰富的Node.js教学经验,参与Node.js项目开发,他们依据先进的教育理念,结合全国职业院校实际教学情况以及学生专业水平,与IT技术专家共同探讨培养目标、内容、框架,基于不同的教学情境,开发出新一代信息技术优质教材。

适合范围

▶本科和高职院校计算机相关专业的学生。

▶具有一定JavaScript和动态网站开发基础,但是缺少基于框架项目开发经验,需要进一步了解和掌握Node.js主流框架的开发人员。

▶具有其他Web 编程语言(如PHP、ASP.NET)开发经验,想快速学习Node.js的开发人员。

▶对动态网站开发有一定了解,但是缺乏Node.js项目开发经验,希望了解Express和Koa框架的开发人员。

中慧科技Web开发系列教材规划

序号教材合作院校出版日期
1《Vue应用程序开发》广东科学技术职业学院已出版
2《Java EE企业级应用开发(SSM)》 常州信息职业技术学院已出版
3《PHP程序设计》泸州职业技术学院已出版
4《Java程序设计基础》陕西工业职业技术学院2021.8
5《MySQL数据库》安徽财贸职业学院2021.8
6《Node.Js应用开发》常州信息职业技术学院2021.8
7《Java高级程序设计》长沙商贸旅游职业技术学院2021.8
8《UI设计基础》南京信息职业技术学院2021.8
9《HTML5与CSS3程序设计》山东科技职业技术学院2021.8
10《Java Web应用开发》九江职业技术学院2021.9
11《JavaScript程序设计》广东科学技术职业学院2021.12
12《微信小程序开发》常州信息职业技术学院2021.12

公司介绍

成都中慧科技有限公司是中慧云启科技集团下属控股子公司,是一家集软件产品研发、IT系统集成、销售、技术培训和技术服务于一体的国家高新技术企业,获得授权国家专利五项、软件著作权数十项。凭借IT行业技术优势以及教育行业人才培养优势,自主研发“课-赛-证融通”特色教育产品,培养适合企业需求的高技能创新型人才。

作为各省Web前端开发技能竞赛的技术支持企业,连续五年为其输送优质人才,深入了解师生基本情况和企业的岗位需求,关注市场技术主流方向,因而在人才培养设计、教学标准制定、目标岗位、1+X职业技能证书、“课-赛-证融通”、校企合作、师资培育方面拥有不可多得的经验。