写点什么

npm 5.0 普遍提升了性能

  • 2017-06-01
  • 本文字数:939 字

    阅读完需:约 3 分钟

npm 公司发布了其软件包管理工具 npm 5.0 版,这为公司多年的规划和累月的编码工作划上了一个句号。npm 5 提升了性能,使其保持了对同类软件的竞争力。

Npm 公司通过博客帖子宣布新的软件包管理工具发布,并称npm 5 是“一次相当大的进步,显著地改进了几乎所有常见情况下的性能”。该发布并非仅是给出了新的主版本号,而主要是提供了一些新的特性和突破性改进。

据博客帖子介绍,npm 5 中的一个重大改进是针对缓存的性能和行为,例如对离线行为的改进。现在npm 会在机器离线时使用本地缓存,而不是去反复地尝试访问网络。开发人员可以通过设置 --prefer-offline--prefer-online等选项定制缓存的使用方式。

但是这一重大改进将会导致全部已有的缓存失效,开发人员需要重新下载软件包。因此应确保在升级 npm 时具有高速的网络连接。

npm 5 还提供了其它的一些新特性,其中最显著的改进是--save成为了默认行为。以前,要将完成安装的软件包保存在 package.json 文件中,开发人员需要发布命令:

npm install --save虽然开发人员肯定有意向去执行软件包的保存行为,但是实际在命令执行时还是需要做双向确认(Opt-in)。在 npm 5 中,即使不明确指定该标识,软件包也会保存到 package.json 中。但麻烦的一面是,如果开发人员不想保存该软件包,需要在命令中明确指定--no-save标识。

在社区中,部分开发人员倾向于使用 Yarn 软件包管理工具,它是另一个很有前途的竞争者。Yarn 的存在将促使 npm 更加努力,激发 npm 在性能上的改进。HackerNews 用户 chrisweekly 写道:“感谢 Yarn,帮助社区看到了真相(译者注:原文为“皇帝的新装”)。回想起来,很明显默认确定性构建的确是核心需求”。

npm 公司 CEO Isaac Schlueter指出,对 npm 5 的改进已经进行了很长的时间,并非是针对 Yarn:

可以说,npm 5 中的所有改进早在多年前就已做出了规划。鉴于已有大量用户依赖于 npm 工具,我们必须慎重对待重大更改。社区在 Yarn 的使用上给出了一个强烈信号,虽然这表明我们正走在正确的道路上,但从外部看上去,这一事件却仿佛是 npm 改进的“催化剂”。

无论改进是社区推动或是公司先行考虑到的,开发人员终将从中受益,能用上更快更好的工具。 GitHub 上提供了完整的 npm 5 发行说明。

查看英文原文: Npm 5.0 Boosts Common Sense Performance

2017-06-01 18:263566
用户头像

发布了 227 篇内容, 共 84.8 次阅读, 收获喜欢 28 次。

关注

评论

发布
暂无评论
发现更多内容

flume基本概念与操作实例(常用source),kalilinux视频教程

Java 程序员 后端

Redis Pipeline

new life

Github上都在疯找的阿里内部“全栈技能修炼”终于来了,kafka基础概念

Java 程序员 后端

外包学生管理系统详细架构设计

天天向上

架构实战营

GitHub上标星75k+的《Java面试突击版,京东java面试题答案

Java 程序员 后端

.NET6新东西--ConfigurationManager

喵叔

11月日更

Gradle项目的jar发布到私有仓库,java并发编程实战王宝令

Java 程序员 后端

如何做架构设计

天天向上

架构实战营

Go语言安装和配置SDK,阿里牛逼

Java 程序员 后端

Hello Git快速入门,三年经验Java开发面经总结

Java 程序员 后端

HTML笔记 —— 标签和超链接,java面试数据库隔离级别实战

Java 程序员 后端

WEB本地存储:localStorage、Web SQL Database、IndexedDB

devpoint

Cookie indexedDB LocalStorage sessionStorage 11月日更

Geospatial-地理空间,java面试基本知识

Java 程序员 后端

Github限时开放!阿里内部强推的《微服务容器化参考指南

Java 程序员 后端

Java基础 | 泛型机制与反射原理

Java jdk 反射 泛型

感觉要起飞!终于找到开发效率低的原因....

Jackpop

Git 常用命令,使用Docker部署Spring-Boot项目

Java 程序员 后端

数据分析入门

加里都好

大数据

Python+JavaScript = 真牛!

Jackpop

HarmonyOS(鸿蒙),java免费视频百度网盘

Java 程序员 后端

git(3)Git 分支,mysql语句优化面试题

Java 程序员 后端

Github上堪称最全的面试题库(Java岗)到底有多香,java基础进阶视频

Java 程序员 后端

GitHub标星17万:打破程序员“中年危机,单点登录(Single-Sign-On)解决方案

Java 程序员 后端

GitLab CI构建SpringBoot-2,rabbitmq原理及作用

Java 程序员 后端

Java基础 | Proxy动态代理机制详解

jdk 动态代理 java基础 Proxy

《Kubernetes in action 读书笔记》:Kurbernetes横空出世

后台技术汇

kubenetes 11月日更

Java容器 | 基于源码分析List集合体系

Java List 集合 ArrayList

Java容器 | 基于源码分析Map集合体系

Java hashmap map

HashMap + 软引用进行缓存,java程序设计案例教程第二版答案

Java 程序员 后端

HDU-3038-How Many Answers Are Wrong【 带权并查集 】题解

Java 程序员 后端

IDEA的Docker插件实战(Docker Image篇),rabbitmqpdf百度云

Java 程序员 后端

npm 5.0普遍提升了性能_JavaScript_David Iffland_InfoQ精选文章