Coursera 笔记

Module 01 · Introduction to Server-Side JavaScript服务器端 JavaScript 入门

Introduction to Node.jsNode.js 简介

Coursera ↗

🎵 背景音乐开始
欢迎观看《Node.js 简介》视频!完成本视频后,您将能够:

  1. 描述 Node.js 在服务器端脚本中的角色
  2. 列出 JavaScript 与 Node.js 的区别
  3. 解释 Express.js 的功能及其如何帮助开发者构建 Node.js 应用程序

Node.js 概述

什么是 Node.js?

  • 开源语言:运行在 Google 的 V8 引擎上。
  • 跨平台支持:可在 Linux、Windows 和 Mac OSX 上运行。
  • V8 引擎:由 Google 为 Google Chrome 浏览器开发的开源引擎。

Node.js 的核心特点

  1. 事件驱动(Event-driven)
  2. 异步非阻塞 I/O(Asynchronous, non-blocking I/O)

Node.js 的工作流程

以下是 Node.js 应用处理客户端请求的主要步骤:

  1. 用户交互:用户通过 HTML 和 CSS 创建的用户界面(UI)选择一个选项。
  2. 客户端业务逻辑:触发客户端的 JavaScript 代码,例如输入验证。
  3. HTTP 请求发送:JavaScript 应用通过 HTTP 调用 Web 服务,并发送 JSON 数据包。
  4. 服务器端处理:
  • REST Web 服务(由 Node.js 应用组成)接收 HTTP 请求。
  • 处理请求后,将结果以 JSON 数据包的形式通过 HTTP 返回给客户端。


JavaScript 与 Node.js 的关系

  • JavaScript:传统上用于客户端功能,例如与 AngularJS、Dojo 和 jQuery 等框架结合使用。
  • Node.js:将 JavaScript 拓展到服务器端,可取代 Java、Perl、C++、Python 和 Ruby 的部分角色。

Node.js 的实际应用

Node.js 已被以下公司投入生产使用:

  • Uber
  • Yahoo!
  • LinkedIn
  • GoDaddy
  • eBay
  • PayPal


什么是 Express.js?

Express.js 是一个高度可配置的框架,用于构建基于 Node.js 的应用程序。

  • 功能:通过 HTTP 实用工具方法和中间件(Middleware),对 Node.js 的低级 API 进行了抽象。
  • 优势:加快开发速度,简化复杂操作。

Express.js 的核心功能

功能模块 描述
Public 存储公共资源,如图像、CSS 和 JavaScript 文件。
Templates/Views 渲染的 HTML 内容,由服务器端生成并发送给客户端。
Routes 定义端点,用于接收和处理客户端请求。
Server.js 包含主应用代码的文件。
Package.json 项目元信息文件,包括依赖、脚本等内容。


本视频学习要点

  1. Node.js 是 JavaScript 的服务器端组件。
  2. 使用 Node.js 可以提升应用程序性能。
  3. Express.js 是一个框架,可帮助快速构建 Node.js 应用程序。

现在,您已经了解了 Node.js 和 Express.js 的基础知识,接下来准备开始构建第一个 Node.js 应用程序吧! 🌟