Nodejs、yarn、npm关系辨析
@AikenH 2022 Node-JS-Chapter1 参考:包管理工具npm、yarn以及nvm简介及简单使用 Concept 概念 对 Node,NPM,JS,Yarn,NVM 的概念和作用进行一个辨析和介绍,了解各自的含义和职责,进而理解我们使用的到底是什么,环境怎么管理,怎么自定义和进行改动等。 JS在 1995 年诞生,Nodejs 在 2009 年诞生,在此之前 JS 只能在浏览器中使用(google 开发的 chrome 的 V8 引擎),NodeJS(第三方作者想直接在计算机运行 JS,让其脱离浏览器)相当于提供的一个 JS 的运行环境,用来支持 JS 的执行,也就是 JS 的一个 runtime system。 由此,JS 除了 web 前端编程,又可以支持后台开发、GUI 开发、APP 开发和 CLI 工具开发 Nodejs和 JS 的概念已经在上述清楚了,这里说一下 nodejs 组成: V8 引擎将 JS 编译成机器码,提高运行速度; 本地模块:使用 C/C++实现的一些高性能开源库; 标准库:封装 C/C++的一些本地模块的接口,转换为 JS 接口,就是 Nodejs 的标准库,其良好的设计也赋予 Nodejs 强大的生命力; NPM 是随 NodeJS 一起安装的包管理工具(提供下载,版本校验,兼容性校验等功能),就像 pip、conda 帮助 Nodejs 管理并解决本地部署的问题。 允许下载别人写好的第三方包到本地使用; 允许下载安装别人编写的命令行程序; 允许上传包或命令行程序给别人使用; Yarn:由 Facebook、Google、Exponent 和 Tilde 联合推出的 JS 包管理工具,和 NPM 就像是 pip 和 conda 的关系,其仍然使用 NPM 的 registry,不过提供了全新的 CLI 来进行管理(也就是管理包的代码和逻辑有区别) ...