4

Bun 发布 1.0 正式版本,Zig 编写的 JavaScript 运行时

 11 months ago
source link: https://blog.csdn.net/Jdjdjjdjdjdje/article/details/132777435
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

Bun 发布 1.0 正式版本,Zig 编写的 JavaScript 运行时

2022 年 9 月 8 日,Javascript 运行时 Bun 正式发布 1.0 版本,标志着这个由前 Facebook 工程师创建的项目正式进入稳定生产可用阶段。

Bun 的愿景是通过深度整合,让 Javascript 开发 “快如闪电”。这个新生力量是否能撼动 Javascript 界老牌霸主 Node 的地位,成为下一代前端开发标准?让我们一睹这个新星的威力。

作为 Javascript 社区中一个相对较新的革新者,Bun 致力于解决碎片化工具过多导致的开发低效问题。它将运行时、打包工具、测试框架等功能融合在一个工具中,提供开箱即用的高性能体验。

Bun 兼容现有的 Node.js 生态,几乎所有 Node 程序可以无缝迁移。更令人振奋的是,Bun 的启动速度可达 Node 的 4 倍,运行 TypeScript 的速度比 esbuild+Node 快 5 倍!原因在于其使用了 Apple 开源的 WebKit 引擎,而不是 Node 常见的 V8。

bun index.ts

Bun 内置对 TypeScript 和 JSX 的支持,省去了编译配置的麻烦。同时它也能兼容 CommonJS 和 ESM 模块,你可以在同一文件内混合使用 import 和 require 语句。Bun 成功地消除了模块管理的复杂性问题,表现十分出色!

Bun 还拥有先进的本地 API,比如用 Bun.file() 替代 fs 读文件,可获得 10 倍速度提升。Bun.write() 写入文件也比 Node 快 3 倍。Bun.serve() 启动 HTTP 服务支持 WebSocket,性能均是 Node 的 5 倍左右rtk。可以说,Bun 的本地 API 设计是效率至上的。

Bun 最大的杀手锏是其集成的打包功能。基于 esbuild 优化,它比主流的 Rollup、Parcel、Webpack 都快上一两个数量级,堪称 JS 打包速度之最。Bun 更开创了 JS 宏的新概念,可以在打包时运算 JS 函数并内联结果到代码中,是其他打包器难以企及的创新

对于前端测试,Bun 实现了与 Jest 兼容的测试框架 bun:test。它利用原生实现提升了匹配器速度,完爆 Jest 和 Vitest 达 10-100 倍。命令 bun test 即可享受极速测试体验。

最后,Bun 现在首次推出实验版本imu,为 Windows 操作系统提供原生支持,这意味着 Windows 用户无需再依赖 Windows Subsystem for Linux(WSL),即可轻松体验 Bun 所带来的超光速开发乐趣。

Bun 1.0 的发布预示着 Javascript 生态可能再次被颠覆和重塑。新老开发者们不妨试用 Bun,体验其中的进化与乐趣。让我们共同见证 Javascript 的新纪元!


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK