Node.js 使用了全球最流行的 JavaScript 语言进行开发,并基于性能强悍的 V8 引擎,已经成为目前最热门的服务器开发平台之一。无论你是已经熟悉 JavaScript 的前端工程师,还是其他后端(例如 Java)工程师,抑或是编程新手,Node.js 都有十足的理由值得你学习和探索。
JavaScript ( JS ) 是一种具有函数优先的轻量级,解释型或即时编译型的编程语言。虽然它是作为开发Web 页面的脚本语言而出名的,但是它也被用到了很多非浏览器环境中,例如 Node.js、 Apache CouchDB 和 Adobe Acrobat。JavaScript 是一种基于原型编程、多范式的动态脚本语言,并且支持面向对象、命令式和声明式(如函数式编程)风格。了解更多 JavaScript。
- JavaScript 语法要素
- 各类语句
- 循环语句
- 条件语句
- Switch 语句
- 变量与操作符
- 函数定义
- 各类语句
- JavaScript 数据类型
- 五类基本数据类型
- string
- number
- boolean
- object
- function
- 三类object
- Object
- Date
- Array
- 两类空值
- undefined
- null
- 五类基本数据类型
- ECMAScript 6+ 基础知识
- let & const 变量声明
- 箭头函数
- 对象 & 数组解构赋值
- class 的基本语法和继承
- Promise 对象
简单的说 Node.js 就是运行在服务端的 JavaScript。 Node.js 是一个基于Chrome JavaScript 运行时建立的一个平台。 Node.js是一个事件驱动I/O服务端JavaScript环境,基于Google的V8引擎,V8引擎执行Javascript的速度非常快,性能非常好。
- 安装
- 各平台安装包
- nvm
- 编辑器环境安装
- VSCode
- ESLint
- Prettier
- 模块机制
- CommonJS 规范
- require、module 和 exports
- npm
- 基本命令
- package.json
- 切换 npm 源
- npm scripts
- 全局对象
- process 对象
- Buffer 对象
- ✍️《Node.js 开发环境搭建》 🗝知识点 1、2、4
- ✅《Node.js 快速入门教程》 🗝知识点 3、4、5
- VSCode JavaScript 语言开发官方文档
- 狼叔:如何正确的学习Node.js - 安装Node.js环境
- 《Node.js技术栈》- Node.js基础系列
- 《Node.js技术栈》- Module模块机制
HTTP是一种能够获取如 HTML 这样的网络资源的 protocol(通讯协议)。它是在 Web 上进行数据交换的基础,是一种 client-server 协议,也就是说,请求通常是由像浏览器这样的接受方发起的。一个完整的Web文档通常是由不同的子文档拼接而成的,像是文本、布局描述、图片、视频、脚本等等。
- HTTP 的概念
- HTTP 的特点
- 无连接
- 无状态
- 客户端向服务端发起请求的过程
- 三次握手
- 请求报文的内容格式
- 请求方法(GET、POST、PUT 等等)
- 请求路径(URL/URI)
- 请求头部及常见字段
- 响应报文的内容格式
- 状态码
- 响应头部及常见字段
- 常见的数据交换格式
- JSON
- Form 表单数据
- XML
- 异步 I/O 与原生事件循环
- 回调函数,以及 async 库的优化
- Promise 与 async/await
- 性能测试与调优
- ✍️《Node.js 异步编程实战》 🗝知识点 1、2、3、4
- 狼叔:如何正确的学习Node.js - Node核心:异步流程控制
- async 官方文档(英文)
- MDN - 使用 Promise
- MDN - async 函数
- JavaScript Promise迷你书
凭借优秀的 I/O 性能和吞吐率, Node.js 当之无愧是 Web 服务器开发的首选之一。后端开发常用框架包括 Express 和 Koa,可任选其一进行学习。
- 路由的概念与定义
- 中间件的编写与使用
- 模板引擎的使用
- RESTful API 的开发
- 关系型数据库的接入(例如 MySQL)
- 文档型数据库的接入(例如 MongoDB)
- ✅《Express 快速入门教程》 🗝知识点 1, 2, 3
- ✍️《Koa 快速入门教程》 🗝知识点 1, 2, 3
- ✅《从零开始用 Express + MongoDB 搭建图片分享社区(一)》 🗝知识点 1, 2, 3
- ✅《从零开始用 Express + MongoDB 搭建图片分享社区(二)》 🗝知识点 1, 2, 3, 6
- 单元测试
- 基准测试
- 持续集成
- Travis CI
- Circle CI
- GitHub Action
- ✍️《Mocha + Chai 测试 Express 应用》 🗝知识点 1, 3