@
shunia #71
如果是 Yarn 安装的项目, 则 100 年以后 仍然可以用 Yarn 进启动, 哪怕是互联网已经完全断开, 或者说没有任何第三方 npm 的镜像库, 以及 npm 库 Yarn 一样可以启动, 这样就极大的避免了 100 年以后的项目无法启动的问题
你是没有使用 Yarn 的 Zero-installs 来安装项目, 何谈 10 年后进行启动? Yarn 的 Zero-installs 就是为了解决你所谓的 10 年后无法启动的问题
其次 Yarn 重写 node_modules 加载的方式, 这些不用考虑肯定提升了性能
以前的目录是
- a
- esm
- packages.json
- b
- esm
- packages.json
这样的接口, 是可以可以展开的文件夹
而现在变成了
[email protected] [email protected] 至于性能提高多少, 相信你只要是用过电脑的都知道 copy 一个 1g 的文件, 和 copy 一个一共 1g 的散文件的文件速度.
优化的效率就在这个地方, 因此所以需要添加 `.pnp.cjs` 和 `.pnp.loader.mjs`来解决这个问题, 应该 node 本身不支持.
pnpm 只是软连接, 这并没有解决什么问题, 而 yarn 是彻底重构 npm 这是本质区别.
yarn 不合适初学者, 因为会有很多问题. 这些初学者的问题都解决了, 那么你将会打开一个新的世界, 至少无论压缩体积,还是删除效率还是安装效率至少加快了百分之八十, 甚至一些对等依赖的问题也直接提示给我了.
Yarn 安全可靠速度快, 没有哪个包管理器目前能做到 Yarn 的这些功能.
当然大多数人不会在乎现在的项目是否 10 年能启动起来
参照链接
-
https://yarnpkg.com/features/caching