Coursera 笔记

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

Overview of Node Package Manager NPM概述

Coursera ↗

欢迎观看《Node Package Manager 概述》课程!完成本视频后,您将能够:

  1. 解释包管理器的用途
  2. 描述 NPM 的两个主要功能
  3. 说明 package.json 文件的作用
  4. 比较和对比本地安装与全局安装的区别

什么是包管理器?

定义

  • 包管理器:处理模块和包的一套工具,用于管理依赖项。
  • 依赖项:程序中调用和复用的代码,通常以库或包的形式存在。

依赖关系的示例

  • 假设开发一个模块:
    • 模块 A 调用模块 B 的功能;
    • 模块 B 依赖于第三方的模块 C;
    • 模块 C 可能还依赖于模块 D。

因此,模块 A 需要依赖 模块 B、C 和 D 才能正确运行。


包管理器的作用

  • 自动化管理:
    • 查找、安装、升级、配置、维护和移除包。
  • 依赖跟踪:
    • 确保软件具备运行所需的依赖项,无需手动处理。
  • 版本管理:
    • 连接到包仓库,管理包的版本信息和依赖关系。

Node Package Manager (NPM)

NPM 的两大功能

  1. 命令行工具:
  • 用户可以通过命令行发布和下载包。
  1. 在线仓库:
  • 一个包含 JavaScript 包 的数据库,记录包的版本和依赖信息。


package.json** 文件**

  • 定义:每个 NPM 包都需要在项目根目录下包含一个 package.json 文件。
  • 作用:
    • 用于记录包的元数据信息,例如依赖项、版本号等。
    • 帮助 NPM 确定包的依赖项。
  • 示例代码:
    {
      "name": "my_project",
      "version": "1.0.0"
    }
    
    字段名称 描述
    name 项目的名称,例如 my_project。
    version 项目的版本,例如 1.0.0。

NPM 的两种安装方式

安装方式 描述 命令示例
本地安装 - 包仅限于当前目录的应用使用。
- 默认行为:创建 node_modules 文件夹,并安装包及其依赖。
npm install <package_name>
全局安装 - 包可以被机器上的任何应用访问。
- 注意:全局安装可能会因项目版本冲突导致兼容性问题。
npm install -g <package_name>

总结

  1. 包管理器的作用:确保软件拥有正确运行所需的依赖项,简化依赖管理。
  2. NPM 的功能:
  • 提供命令行工具发布和下载包。
  • 作为在线 JavaScript 包数据库。
  1. package.json** 的作用**:用于记录包的元数据信息,帮助管理依赖项。
  2. 本地与全局安装的区别:
  • 本地安装:仅当前目录下的应用可访问该包。
  • 全局安装:全局可用,但可能引发版本兼容问题。

🎉 恭喜您掌握了 NPM 的基础知识! 🚀