作者:谋 | 来源:互联网 | 2023-08-23 17:31
RomeSebastianMcKenzie,就是Yarn和Babel的作者,也是FacebookRN团队的成员,最近在做一个雄心勃勃的试验项目:开发一个包罗万象的JavaScrip
Rome
Sebastian McKenzie,就是 Yarn 和 Babel 的作者,也是 Facebook RN 团队的成员,最近在做一个雄心勃勃的试验项目:开发一个包罗万象的 Javascript 和 TypeScript 工具链,叫 Rome。
从 Github 上的提交记录可以看到,Rome 就在前几天公布。为啥叫 Rome?名字就来源于我们比较熟习的几句谚语:
- "All Roads Lead to Rome"
- "Rome wasn't built in a day"
- "When in Rome, do as the Romans do".
Rome 是什么
Rome 是一个从零开始实现的 Javascript 完整工具链,它能够编译和打包 Javascript 项目,执行 lint 和类型检查,运行测试,还能格式化代码。
设计理念
Rome 采用了一种不同于现有开源技术栈的 Javascript 工具,更接近于大厂内部使用的基于 monorepo 的工具集。传统的工具,比方 Gulp 和 Webpack,采用的是管道思维,也就是不同的步骤采用不同的工具,源码在这些工具管道上传递。而 Rome 选择的是自己执行所有构建和编译步骤。
这有助于处理 Webpack 和 Rollup 等流行的打包程序所面临的一个问题,即整个程序的分析和优化最终会变得非常困难或者代价高昂,由于每个工具都必需解析和构建自己的 AST。
目标
取代许多现有的 Javascript 工具。看起来野心不小啊!不过,它也可以跟其余工具集成,比方把 Rome 编译器作为其余打包工具的一个插件。
Rome 还处于起步阶段,是 Facebook 的一个试验项目,在写这篇文章的时候 Github 上已经有 5.7k star 了,看来关注度还是很高的。至于后面发展如何,让我们拭目以待。
更多前台技术干货尽在微信公众号:1024译站
微信公众号:1024译站