本节是系列课程的第一节,主要讲了介绍了Node.js,Node.js的作用,和课程介绍。原先看课程的时候记录的比较琐碎,如今重新整理笔记的时候刚好复习复习。

Node.js是什么

官网的话:

Node.js是一个基于Chrome V8引擎的 Javascript运行环境 Node.js使用了一个事件驱动、非阻塞I/O的模型,使其轻量高效

那么,都是运行JS,那么在 Node.js 里运行 JavaScript 跟在 Chrome 里运行 JavaScript 有什么不同呢?

  • Chrome 浏览器用的是同样的 JavaScript 引擎和模型。
  • 在 Node.js 里写 JS 和在 Chrome 里写 JS ,几乎没有不一样!

语法方面没啥不一样,主要是环境差异:
Node.js 没有浏览器 API ,比如 document ,window 等。 但是加了许多 Node.js API 。

对于开发者来说,Node.js :

  • 你在 Chrome 里写 JavaScript 控制浏览器。
  • Node.js 让你用类似的方式,控制整个计算机。

    Node.js 能做什么?

    web Server

    image.png

ssr / 搜索引擎优化 / 首屏速度优化

BFF

对用户侧提供HTTP服务
使用后端RPC服务
image.png

构建工作流

image.png
image.png

使用 Node.js 做 JS 构建工具,是最保险的选择

开发工具和客户端应用

比如:vscode,electron

游戏

比如:wayward(沙盒游戏)

可扩展性

  • 大型应用需要给使用者自定义模块的能力
  • 使用 Node.js 做复杂本地应用
  • 可以利用 JS 的灵活性提供外部扩展
  • JS 庞大的开发者基数让他们的灵活性得到利用

课程实战项目介绍

目标: Node.js 版极客时间网站
功能

  • 列表页
    • 打通前后台
    • 服务端渲染
  • 详情页
    • 网页路由
    • 异步加载
  • 播放页
    • API 服务器