Categories: JS业界编程

您应该选择npm还是yarn?

每个团队都必须在开发产品之前和期间做出各种决定。其中之一通常就涉及yarn,npm或其他工具来构建和打包javascript代码。一些开发人员渴望朝某个方向前进,有时他们最终会花费大量时间来尝试做出实际上对他们的日常生活影响不大的决策。

NPM & Yarn

NPM是npm生态系统的命令行界面。它经过了实战测试,出奇的灵活,每天被成千上万的JavaScript开发人员使用.
Yarn会缓存它下载的每个软件包,因此不再需要再次存储。它还并行化操作以最大程度地利用资源,因此安装时间比以往更快。

不同点

在包管理器之间进行选择以用于构建和管理项目依赖项时,开发人员通常会陷入困境。
生态系统中两个流行的软件包管理器是NPM(节点软件包管理器)和Yarn(Facebook创建的软件包管理器)。
我们将同时考虑以下软件包管理器:

  • 性能
  • 安全
  • 支持
  • 便于使用
    在本文的最后,您可以决定在构建项目时使用哪个程序包管理器。

性能

Yarn总是比任何低于5.0的npm版本都快得多。npm团队宣布,npm 5.0在某些操作上的速度将比其前身快5倍。但是,如下面的结果所示,在使用一些相当简单的依赖项进行测试时,Yarn似乎仍然比npm 4和5快。

安全

npm的主要问题是,它会自动从依赖项运行代码并允许动态添加软件包。尽管此功能具有便利性,但它也会创建安全漏洞。由于Yarn仅从您的yarn.lock或package.json文件安装,因此被认为更加安全,这在当今世界中变得越来越重要。Yarn还可以在安装前使用校验和,以确保每个软件包的完整性。

支持

NPM是由Isaac Z. Schlueter创建的一个开源依赖项管理器,用于解决类似PEAR之类软件包的缺点。
Yarn是Facebook开发的,用于弥补NPM的缺点。但是NPM已经发布了很多年,社区发展比较完善,很多问题都可以从网上找到答案,而Yarn则还在发展的过程中。

便于使用

NPM和Yarn的使用方式差不多,但从输出,易读性上来说,Yarn更胜一筹。

凭借其卓越的性能,易于安装和众多便捷功能,Yarn正变得越来越流行。尽管如此,npm仍然存在,并且正在努力对每个新版本进行改进。

5.0
04
工业部对涉及非法收集的用户个人信息企业进行调查
SSH密钥管理
嘻嘻

嘻嘻IT: 笔者是一个工作七八年的程序猿老鸟,从事涉及的技术栈主要包括PHP、Linux、Devops等,喜欢研究新技术,尝试新技术,提升技术自动化和开发效率,致力于write less,do more! 技术每年都会层出不穷,领域划分的越来越细,不可能学习所有的东西,保持对技术的好奇心,理解技术中核心思想,做一个有深度,有思想的开发!

Recent Posts

如何在Linux中根据修改日期和时间查找和排序文件

习惯于使用图形用户界面的人可以…

20小时 ago

Golang中如何实现PHP中array_fill函数?

PHP中的array_fill…

22小时 ago

MyIP一款开源好用IP工具箱(4.6k stars)

MyIP一款开源好用IP工具箱…

2天 ago

asciinema一款优秀终端会话录制工具(13.2k stars)

asciinema是一个优秀的…

3天 ago