cloud.tencent.com/developer/a…
babel是Sebastian McKenzie在2014年时,他还在高中时期开始写的一款工具,而Sebastian McKenzie同时是前端另一款非常流行的工具yarn的创始人。
babel干了什么
新语法的代码转为浏览器支持的老语法代码
babel的问题--慢
Babel是JavaScript写的,JavaScript就是有点慢
用JS写的babel 不能用多核cpu处理编译任务链
替代品
更快的babel
swc
swc是2019由Kang Dong Yoon发布的
Speedy Web Compiler
swc是基于Rust语言
swc对标babel
swc 和 babel 命令可以相互替换,并且大部分的 babel 插件也已经实现
而最近的一个next.js 12版本,它们也迁移至了swc,据其官网反馈:
"Compilation using the Next.js Compiler is 17x faster than Babel and enabled by default since Next.js version 12."
它们说有17倍的速度提升,确实太惊人了。
esbuild
esbuild是由 Evan Wallace在2020写的, Evan Wallace是Figma的创始人。
esbuild是由go语言写的。
可能前端人员对go不是非常熟悉,在后端领域,go现在非常火爆,它以杰出的性能而闻名。
而最近比较流行的Vite工具,它就是使用的esbuild,所以它非常快。
代码分割和css处理方面有问题,现阶段不建议在生产环境构建bundler
新的架构
总结
上一个十年是框架和库百花齐放的十年
下一个十年是打包器编译器百花齐放的十年
变化的是各种打包器,编译器,工具,框架,库。
不变的是 基础的html,css,js。基础永远都很重要。