Deno 1.5 使用新编译器,打包性能提升 3 倍

  • 2021-01-19
  • 本文字数:850 字

    阅读完需:约 3 分钟

为 JavaScript 和 TypeScript 开发 Deno 运行时的团队最近发布了 Deno 1.5。新版本通过使用基于 Rust 的 JavaScript/TypeScript 编译器swc来提高打包性能,并通过摇树优化进一步减少包的大小。Deno 1.5 实现了 alert、confirm 和 prompt 等 Web 平台 API,开发人员可以在终端编写简单的交互式应用程序。

Deno 团队重构了 Deno 的 TypeScript 编译器基础架构,开始使用 swc。swc 是用 Rust 编写的 JavaScript/TypeScript 编译器和打包器。swc 声称单线程速度比 Babel 快 20 倍,在一次四核基准测试中快 70 倍。Deno 1.5 的发布说明提到了 swc 对 Deno 编译性能的影响:

当我们启用类型检查时,性能提升了 3 倍,如果开启--no-check 选项,则提升 15 倍。

新的摇树优化能力进一步降低包的大小。发布说明给出了一个源码示例,在使用 v1.5 而不是 v1.4 进行编译时,代码大小减少了 35%。

Deno 1.5 打好的包可以作为标准的 ES 模块发布。发布说明写道:

动态导入现在可以正常工作,import.meta.url 也可以正确设置。如果你使用 Deno 为浏览器打包代码,请确保将包作为 ES 模块加载(在