BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

npm 5.0普遍提升了性能

| 作者 David Iffland 关注 4 他的粉丝 ,译者 Rays 关注 3 他的粉丝 发布于 2017年6月2日. 估计阅读时间: 3 分钟 | Google、Facebook、Pinterest、阿里、腾讯 等顶尖技术团队的上百个可供参考的架构实例!

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

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我
社区评论

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT