写点什么

Bun 1.0 JavaScript 运行时发布,附带 Windows“实验”版

  • 2023-09-22
    北京
  • 本文字数:1262 字

    阅读完需:约 4 分钟

大小:609.58K时长:03:28
Bun 1.0 JavaScript运行时发布,附带Windows“实验”版

Bun 团队已经为其 JavaScript/TypeScript 运行时公布了 1.0 稳定版,正式版在速度、集成度和兼容性等方面均做出了强有力的承诺。

 

项目缔造者 Jarred Sumner 在视频演示中解释道,“Bun 是一款完整的工具包,用于构建、测试和调试各类 JavaScript 与 TypeScript 应用场景,小到袖珍脚本、大到全栈服务器端渲染应用皆可支持。”Bun 在设计上还与 Node.js 相兼容。虽然目前还存在一些限制,导致不少开发者对其“替代品”的宣传定位仍旧存疑,但相当一部分命令和 API 已经确实有效。而且与 Node.js 不同,Bun 使用苹果 JavaScriptCore 引擎并由 Zig 构建而成。

 

Bun 能够运行 TypeScript 与 JavaScript,而又无需进行类型检查——这明显违背了开发者选择 TypeScript 的基本初衷。不过,开发人员也可使用 TypeScript 编译器 tsc 来配合 Bun。

 

Bun 的特色之一,在于它能支持 ES(EcmaScript)模块(浏览器直接支持)与 CommonJS(较早的模块系统)。开发团队认为,CommonJS 在 JavaScript 生态系统中已经根深蒂固,不可贸然放弃对它的支持。Sumner 表示,“无论再过多久,总会有一部分软件包尚未使用 ES 模块。”



项目缔造者 Jarred Sumner 在视频中展示 Bun

 

Bun 开发团队在速度方面做出了大胆承诺。他们发布的帖子提到,bun 软件包的安装速度是 npm(Node 包管理器)的 29 倍;在 JavaScript 测试中速度为 Jest 的 13 倍;打包速度则是 esbuild 的 1.75 倍。

 

Bun 在此番发布中还推出“高度实验性的”Windows 版本。在此之前,Bun 还仅能支持 Mac、Linux 和 Windows Linux 子系统(WSL)。开发团队介绍称,所谓“高度实验性”,是指这套 Windows 版“仅支持 JavaScript 运行时;其他包管理器、测试运行器和捆绑器均被禁用,待后续稳定时方可开放。”

 

Bun 目前能够支持的框架为 Next.js、Astor 和 Nest.js。其他可与 Bun 配合使用的框架则包括 Nuxt、SvelteKit 和 Vite。

 

Bun 还加入了 Deno,希望构建起比现有 Node.js 更出色的运行时。基于 Node 的开发环境往往涉及不同工具集合,也因此变得难以管理。Bun 与 Deno 简化了这一点,与 Deno 相比,Bun 更倾向于兼容 Node.js 和 CommonJS,这对不少开发者都具有一定的吸引力。一位开发者指出,“我们有一支全栈 TypeScript 团队,管理着约 50 个内部库和约 50 万行 TypeScript 代码。上个月,我们尝试用 Deno 加 Bun 作为替代运行时。简单来讲:只要复杂度不是特别高的代码库,Bun 几乎都能直接兼容,而 Deno 则几乎全都无法兼容。”

 

但对于有些人来说,虽然 Bun 已经迎来 1.0 版本,但这款相对较新的工具还略显青涩、难堪生产工作负载的大任。而且不少人发现虽然 Bun 表现不错,但实际性能其实达不到当初承诺的水平。不过总体而言,Bun 的首个正式版本还是获得了不错的评价。

 

相关链接:


https://devclass.com/2023/09/11/bun-1-0-javascript-runtime-released-complete-with-experimental-windows-version/

 

https://www.youtube.com/watch?v=BsnCpESUEqM

 

https://www.infoq.cn/article/Uj6bY5VyC6IDheuilHOC


相关阅读:

Bun 会是 Webpack 之后的下一件大事吗?

比 Node.js 快三倍,新 JavaScript 运行时 Bun 火了

亲身试用新 JS 运行时 Bun 后,我觉得未来可期

疑为针对最近大火的“Bun”

2023-09-22 16:095201

评论

发布
暂无评论
发现更多内容

4. JSON字符串是如何被解析的?JsonParser了解一下

YourBatman

Jackson JSON库

真香!Linux 原来是这么管理内存的

苹果看辽宁体育

Linux 操作系统

当远程工作成为未来的工作方式......

Atlassian

Atlassian Jira

到底一台服务器能够支持多少TCP并发连接?

南方有乔木兮

如何成为一个成功的首席数据官

麒思妙想

LeetCode题解:142. 环形链表 II,JavaScript,快慢指针,详细注释

Lee Chen

大前端 LeetCode

一个小实验,来

池建强

算法 薪资

央行数字货币或将成为经济“内循环”的未来加速器

CECBC

数字经济 全球经济下行 降息 惠普金融深化

Flink 1.11 SQL 使用攻略

Apache Flink

flink

什么样的信任才值得拥有?谈一谈极客邦的5K1S文档

霍太稳@极客邦科技

原创 | 使用JPA全面实现DDD持久化【关于本书】

编程道与术

Java hibernate DDD JDBC jpa

乘商用之风,破后疫情之浪:丁耘分享华为如何持续护航5G新价值

脑极体

Django框架,Flask框架和Tornado框架各有什么优缺点

古月木易

django flask tornado

NameNode和SecondaryNameNode工作机制

奈学教育

NameNode

计算机网络基础(十)---网络层-迪杰斯特拉算法

书旅

算法 计算机网络 网络 最短路径

week08 总结

Z冰红茶

国家版权局发布《关于规范摄影作品版权秩序的通知》

CECBC

电子存证 作品版权 侵权盗版 剑网2019

如何设计一个亿级消息量的IM系统

Chank

Java Architecture Architect IM Instant Messaging

实战:docker搭建FastDFS文件系统并集成SpringBoot

生命在于折腾

springboot

一周信创舆情观察(7.20~7.26)

统小信uos

将Arch Linux安装到U盘

Kurtis Moxley

Linux 安装操作系统

蚂蚁上市:P7可获1200万元期权,酸酸酸酸酸...

程序员生活志

互联网热点 蚂蚁金服

QQ音乐PB级ClickHouse实时数据平台架构演进之路

腾讯云大数据

大数据

Django框架,Flask框架和Tornado框架各有什么优缺点

奈学教育

django flask tornado

顺势昌,逆势亡:人啊,得学会做信天翁,而不是鹧鸪鸟

非著名程序员

创业 程序员 管理 提升认知

秒杀全网!研发、运营必备实用工具网站

程序员生活志

工具类网站

NameNode和SecondaryNameNode工作机制

古月木易

NameNode econdaryNameNode

第八周总结

andy

极客大学

池化技术到达有多牛?看了线程和线程池的对比吓我一跳!

王磊

Java

第八周作业

田振宇

第八周作业

andy

极客大学

Bun 1.0 JavaScript运行时发布,附带Windows“实验”版_架构/框架_核子可乐_InfoQ精选文章