浅谈Node.js中的npm和yarn

官方文档:

npmicon-default.png?t=N658https://www.npmjs.cn/

yarnicon-default.png?t=N658https://yarn.bootcss.com/

npm和yarn的作用

yarn和npm都是构建和打包javascript代码的工具

区别

npm:

1npm使得js开发者易于分享其为解决特定问题而编写的代码,且可供其他开发者在他们自己的应用中复用这些代码。这些可复用代码被称作“包”,有时也叫做“模块”。

2npm最开始是作为node的包管理器开始的,所以npm中存在许多可用于服务器端的包。

3npm的组成部分:网站,注册表(rehistry),命令行工具(CLI)。网站是开发者查找包,设置参数以及管理npm使用体验的主要途径。注册表是一个巨大的数据库,保存了每个包的信息。CLI通过命令行或终端运行。开发者通过CLI与npm打交道。

4注意:npm自定义修改了全局包存放路径,还需要去设置环境变量,将自定义全局包路径加到环境变量中,否则全局装的包没法在命令行窗口中正常使用。

yarn:

1.Yarn是由Facebook、Google、Exponent 和 Tilde 联合推出了一个新的 JS 包管理工具(取代npm) ,是为了弥补 npm 的一些缺陷而出现。

2.yarn需要借助npm进行安装:执行的命令行。

3.注意:yarn自定义修改了全局包存放路径,还需要去设置环境变量,将自定义全局包路径加到环境变量中,否则全局装的包没法在命令行窗口中正常使用

npm的缺点:

当新建一个项目需要执行npm install 的时候速度太慢,有时候下载版本错误或者不完整。

对于同一个项目,不同的人在安装的时候无法保证模块版本的一致性。

yarn的优点

安装速度快:因为yarn缓存每一个下载过的包,所以再次使用时无需重复下载。同时利用并行下载以最大化资源利用率,因此安装速度更快。

安全性较高:在执行代码之前,yarn会通过算法校验每个安装包的完整性。这个是npm所没有的。

可靠性强:使用详细,间接的锁文件格式和明确的安装算法,yarn能够保证在不同系统上无差异的工作。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/17706.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

第十一章:C语言数据结构与算法初阶之排序

系列文章目录 文章目录 系列文章目录前言排序的概念及其运用排序的概念常见的排序算法 常见排序算法的实现1.直接插入排序2. 希尔排序(缩小增量排序)3. 直接选择排序4. 堆排序5. 冒泡排序6. 快速排序将区间按照基准值划分为左右两半部分的常见方式&#…

4 切割纸片

4 切割纸片 作者: 赵晓鹏时间限制: 1S章节: 动态规划与贪心 ---------------------------------输入 6 4 1 1 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 1 1 0 0 1 1 --------------------输出结果 4 #include <iostream> #include <vector> #include <climits&g…

Java 类概念简介

Java 是一种面向对象编程语言&#xff08;POO&#xff09;&#xff0c;它代表了封装、继承和多态性等概念。面向对象编程的功能是经典的&#xff0c;也是Java 对象创建的基础元素。在这篇文章中&#xff0c;我们讨论了 Java 中的类资源管理器&#xff0c;对创建者进行了评论&am…

TCP 协议(三)十种核心机制

1.确认应答&#xff08;可靠机制&#xff09; 2.超时重传&#xff08;可靠机制&#xff09; 3.连接管理&#xff08;可靠机制&#xff09; 4.滑动窗口&#xff08;效率机制&#xff09; 5.流量控制&#xff08;效率机制&#xff09; 6.拥塞控制&#xff08;效率机制&#xff09…

1 怎样用plsql developer导表数据

一 导少量表的情形 1.1 导出 点击‘工具’-‘导出表’&#xff1a; 选择要导出的用户和表&#xff0c;在’PL/SQL Developer’那里指定‘输出文件’&#xff0c;点击‘导出’按钮开始导出&#xff1a; 导出完毕后&#xff0c;最下方会提示‘正在导出表… 完成’。 --如果只想…

【Redis】2、Redis应用之【根据 Session 和 Redis 进行登录校验和发送短信验证码】

目录 一、基于 Session 实现登录(1) 发送短信验证码① 手机号格式后端校验② 生成短信验证码 (2) 短信验证码登录、注册(3) 登录验证① 通过 SpringMVC 定义拦截器② ThreadLocal (4) 集群 Session 不共享问题 二、基于 Redis 实现共享 session 登录(1) 登录之后&#xff0c;缓…

java版电子招标采购系统源码之电子招标采购实践与展望-招标采购管理系统

统一供应商门户 便捷动态、呈现丰富 供应商门户具备内外协同的能力&#xff0c;为外部供应商集中推送展示与其相关的所有采购业务信息&#xff08;历史合作、考察整改&#xff0c;绩效评价等&#xff09;&#xff0c;支持供应商信息的自助维护&#xff0c;实时风险自动提示。…

Prometheus - Concept

一 Prometheus 是什么 Prometheus 是一个开源的 监控和报警系统 。该系统内置和基于时间序列地抓取、存储、查询、绘图数据、报警。 现在是一个开源项目&#xff0c;继 K8S 后的第二个云原生计算基金会的托管项目&#xff0c;可见其火爆程度。 二 Prometheus 的特征 Promet…

Mysql (insert,update操作)

1.创建表&#xff1a; 创建员工表employee&#xff0c;字段如下&#xff1a; id&#xff08;员工编号&#xff09;&#xff0c;name&#xff08;员工名字&#xff09;&#xff0c;gender&#xff08;员工性别&#xff09;&#xff0c;salary&#xff08;员工薪资&#xff09; …

【网络编程】应用层协议——HTTP协议

文章目录 一、HTTP协议基本认识二、URL的认识2.1 urlencode和urldecode 三、HTTP协议格式3.1 HTTP请求与响应格式3.2 如何保证请求和响应被应用层完整读取&#xff1f;3.3 请求和响应如何做到序列化和反序列化&#xff1f;3.4 代码验证请求格式3.5 代码验证响应格式3.5.1 telne…

OpenGl纹理贴图

给图形赋予颜色时&#xff0c;采用纹理贴图的方式。 每个顶点关联一个纹理坐标(Texture Coordinate),然后在图形的其他片段上进行片段插值(Fragment Interpolation) 顶点坐标如下&#xff1a; float vertices[] { // positions // colors // texture coords 0.2f, 0.2f, 0.0f,…

创造一款安卓自定义控件_裁剪原理介绍

1、新增功能&#xff0c;旋转&#xff1a; 效果如图&#xff0c;点击旋转&#xff0c;可以将控件画面本身进行90度倍数的旋转&#xff0c;并进行宽高比例适配&#xff0c;旋转之后裁剪依然正常。 功能实现原理&#xff1a; 1、通过调用view的setRotation功能进行以View为中心…