微软宣布将 TypeScript 性能提高 10 倍
IT之家 3 月 11 日消息,微软官方开发者博客今日发文,宣布将彻底提高 TypeScript 的性能。
微软博客称,TypeScript 的核心价值主张是卓越的开发者体验。随着用户的代码库增长,TypeScript 本身的价值也在增长,但在许多情况下,TypeScript 还没有能够扩展到非常大的代码库。在大项目中工作的开发者可能会遇到长时间的加载和检查时间,开发者必须在合理的编辑器启动时间或完整查看源代码之间做出选择。
为了实现性能提速目标,微软已经开始着手进行 TypeScript 编译器和工具的本地化移植。本地化实现将大幅提高编辑器启动速度,将大多数构建时间缩短 10 倍,并显著降低内存使用。
通过移植当前代码库,微软预计到 2025 年中期能够预览支持命令行类型检查的本地化实现 tsc
,并在年底前提供功能完整的解决方案,包括项目构建和语言服务。
用户可以从微软新的工作仓库构建和运行 Go 代码,该仓库的许可证与现有的 TypeScript 代码库相同。
微软官方测试显示,本地实现已经能够加载许多流行的 TypeScript 项目,包括 TypeScript 编译器本身。以下是在 GitHub 上一些不同大小的流行代码库上运行 tsc
的时间:
此外,大多数开发者的时间都花在了代码编辑器中,因此该项性能最为重要。微软希望编辑器能够快速加载大型项目,并在所有情况下快速响应。凭借本地实现,微软将能够提供极快的编辑器体验。
以 Visual Studio Code 代码库为基准,在快速计算机上,当前在编辑器中加载整个项目所需的时间约为 9.6 秒。使用本地语言服务后,时间降至约 1.2 秒,在编辑器场景中项目加载速度提高了 8 倍。这意味着从用户打开编辑器到在 TypeScript 代码库中按下第一个键之间的工作体验将更快。微软预计所有项目都将看到这种级别的加载时间改进。
优化后的 TypeScript 总体内存使用量似乎也大约是当前实现的一半,并预期将实现进一步的改进。所有语言服务操作(包括完成列表、快速信息、转到定义和查找所有引用)的编辑器响应速度也将显著提升。微软还将转向语言服务器协议(LSP),这是一个长期的基础设施工作项,旨在更好地使微软的实现与其他语言对齐。
IT之家从微软博客获悉,最新的 TypeScript 版本是 TypeScript 5.8,TypeScript 5.9 即将推出。基于 JS 的代码库将继续开发到 6.x 系列,TypeScript 6.0 将引入一些弃用和破坏性更改,以适应即将到来的原生代码库。
当原生代码库与当前 TypeScript 达到足够兼容性时,微软会将其发布为 TypeScript 7.0。为了清晰起见,微软将简单地称它们为 TypeScript 6(JS)和 TypeScript 7(native),这将是微软未来一段时间内的命名方式。
广告声明:文内含有的对外跳转链接(包括不限于超链接、二维码、口令等形式),用于传递更多信息,节省甄选时间,结果仅供参考。
1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。