前言
昨天(2025年4月1日),尤雨溪发布推特,将用Go重写rolldow、Oxc!(不太好分辨是不是 Fake News)

前段时间,TypeScript 官方宣布将使用 Go 重写,速度将快 10x!

近年来,前端工程化面临前所未有的挑战:项目规模呈指数级增长,构建时间从秒级延长到分钟级,开发者体验急剧下降。所以,前端工具链正从 JavaScript/TypeScript 逐步迁移到系统级语言(Go/Rust)。
现状
Go 阵营:
esbuild:极快的打包速度(Go 的并发设计优势)。
typescript(将来):底层支持Go。
Vite 的 Rolldown(可能):利用 Go 重写 Rollup 核心。
Rust 阵营:
SWC:替代 Babel/Terser,Rust 的并行解析优势。
Oxc:高性能的 JavaScript 工具链(代替 ESLint)。
Parcel 2:底层使用 Rust 重写。
Rome 工具链:从 TypeScript 转向 Rust。
为什么
JavaScript 作为前端的发家语言,虽然语法简单,适合快速开发,生态丰富,但仍弱于原生编译语言。但其单线程的设计,使其面对打包文件进行大量I/O操作的场景时无法充分发挥多核系统的优势!且动态语言特性易引入安全漏洞,比如:原型链污染、依赖注入攻击!而像 Go 的轻量级协程(Goroutine)和 Rust 的无畏并发模型,能更好利用多核 CPU 资源,
同时作为静态语言,编译时捕获大多数错误!通常 JavaScript 需依赖 TypeScript 弥补静态类型检查,防止出现 Cannot read property 'x' of undefined 的情况!
将来
可以预见,底层工具链逐渐会选择高性能的语言代替 JavaScript/TypeScript而使用 NodeJs 作为中间层,粘合 JavaScript/TypeScript,是势不可挡的大趋势!
总结
前端工具链向系统语言的迁移反映了工程领域对性能的持续追求。Go 和 Rust 各有优势,选择时需结合实际需求和技术储备。这一趋势预计将持续发展,但本体语言 JavaScript 仍将在配置和插件层保持重要地位!