nodejs基础:包管理工具yarn入门浅聊

前面聊npm其中还有一个包管理工具,那就是yarn,两者都有安装包和模块,其实用yarn的时候安装会有一个yarn.lock的文件锁定版本,而npm的package-lock.json,就是借鉴了yarn的lock文件。

有个大佬整理了两个工具诞生的时间线,可以看一下:

nodejs基础:包管理工具yarn入门浅聊_第1张图片

所以现在如果一般的话直接使用npm毕竟伴随着nodejs安装的时候一起就安装了,目前yarn的一些优点也被npm所借鉴了。

yarn最初的目标是处理npm的缺点,比如性能和安全问题。yarn很快被定位为一个安全、快速、可靠的JavaScript依赖管理工具。但是npm岂能让自己的为他人服务,自然也在不停的更新自己的管理工具,提供更便利简洁的服务。

这两种包管理器在包管理竞赛中并驾齐下,提供了相似的特性和功能。但仍有一些差异,有助于选择使用。

对于原理,就直接黏贴了,毕竟大同小异,大家理解一下即可。

速度和性能

npmyarn安装第三方包的时候,都会执行一系列任务,但是两者又有区别。

  • npm : 任务是安装包的顺序依次下载安装的,也就是意味着它等待一个包下载,然后再下载下一个。
  • yarn : 下载包的时候是并行下载。

两者都有缓存机制,但是yarn可能更好一点,通过事项零安装模式,可以快速的安装包,它缓存某个包并且保存再磁盘上,下载再安装的时候,就不需要通过网络连接,而是同磁盘中离线安装。

不过现在的新版本中,yarn的下载速度比nmp也快不了多少了。

零安装是什么意思?

零安装将缓存存储在项目目录中的 .yarn 文件夹中。当使用 yarnyarn add 等命令时,yarn 会创建一个 .pnp.cjs 文件,此文件包含 Node 用于加载项目包的依赖关系层次结构。因此,几乎可以在零时间访问它们。

对 npm 的主要批评之一是在安全性方面,以前的 npm 版本有几个严重的安全漏洞。然而从版本 6 开始,npm 在安装过程中审核软件包并显示是否发现任何漏洞。可以通过对已安装的软件包运行 npm audit 来手动执行此检查,如果发现任何漏洞,npm 会给出相应的安全建议。如发现有安全漏洞,可以运行 npm audit fix 来修复包漏洞。

yarn再执行代码前面,会通过算法校验每个安装包的完整性。

在安全性上,yarn 和 npm 都使用加密哈希算法来确保包的完整性。

常用命令演示

还是为了路径更直观看,还是路径:F:\test

再使用yarn的时候,需要下载通过npm下载这个管理工具。而这个yarn是一个管理工具,所以一般的时候是全局安装:

npm i yarn -g

初始化项目命令:

yarn init

nodejs基础:包管理工具yarn入门浅聊_第2张图片

可见也会生成一个json文件如下:

nodejs基础:包管理工具yarn入门浅聊_第3张图片

下载第三放包命令

// 添加第三方包
yarn add [包名]
// 添加第三方包带有版本
yarn add [包名]@[版本]
// 安装 开发环境
yarn add [包名] --dev

//通过json下载依赖包命令
yarn insatll

实验来一个安装:

yarn add math

nodejs基础:包管理工具yarn入门浅聊_第4张图片

可以看出有了一个lcok文件锁定版本。

升级依赖包:

yarn upgrade [包名]

移除依赖包:

yarn remove [包名]

package.json文件中的Script中的如何调用,再npm中是 npm run ‘定义命令’,而再yarn中格式:

yarn run  '定义的命令'

其实命令大同小异,目前因为NPM的相互借鉴和发展其性能大幅度提高,一般使用npm足够了,所以对于yarn不能说精通,至少能用一些简单的命令,所以本篇算是一个建立的了解和入门。

你可能感兴趣的:(Node.js,node.js,yarn)