缘起

这个站,是从一个很小的问题开始的。

有次同事在重构一个前端项目,我随口问了句:为什么不用 pnpm?

问出来才发现,我自己也答不太清。pnpm 到底比 yarn 好在哪?yarn 当年又是来解决 npm 的什么毛病?再往前,没有 npm 的日子,依赖是怎么管的?这些工具天天在用,可一旦问起“它为什么是现在这样”,我竟答不全。

顺着这一串“为什么”往回捋,才发现何止包管理。框架、构建、渲染、运行时——前端这些年,几乎每一样新东西,都是被上一样的副作用逼出来的。jQuery 之后有了 React,Webpack 嫌慢才有 Vite,回调地狱逼出了 Promise……一环扣一环,是一条藏在日常背后的因果链。

于是我把它一条条捋了出来。不是教程,也不是博物馆,就是把走过的路摊在桌上,自己能一眼看到头尾。偶尔翻翻,像重看一部老电影:原来手里这套,是从那么远一步步走过来的。

要是它也能帮到别人,在层出不穷的新名词里少慌一点,看清这些大概从哪来、往哪去,那就更好了。

说到底,这是给自己记的;也留给愿意翻的人。

—— Michael.D