找回密码
立即注册
搜索
热搜: Java Python Linux Go
发回帖 发新帖

634

积分

0

好友

92

主题
发表于 昨天 05:42 | 查看: 8| 回复: 0

12月2日,TypeScript团队发布了一项重磅更新:在经过一段时间的重写后,TypeScript的编译器和语言服务已完全使用Go语言重构,其原生预览版现已可供试用。

这意味着,伴随我们多年的、基于JavaScript实现的编译器,有望在不远的将来完成使命。新版本将以原生代码运行,不再依赖JavaScript运行时环境。这本质上是一次从“脚本语言编译器”到“原生编译器”的跨越式升级。

编译与类型检查:性能的飞跃

这次重构带来的最显著变化,在于编译和类型检查的速度

官方数据显示,在同一项目中,新版命令行编译器的执行速度比旧版快8至10倍。以几个真实项目为例:构建时间从133秒锐减至16秒,或从89秒大幅缩短到8.7秒。

值得注意的是,这种加速并非依赖于缓存或增量编译,而是纯粹的“冷启动+全量构建”性能提升。对于大型项目而言,这犹如一次开发体验的全面革新。

尝鲜体验:步骤简洁

如果你当前正在使用TypeScript开发Node.js或前端项目,可以立即按照以下步骤进行体验:

npm install -D @typescript/native-preview
# 使用 tsgo 替代 tsc
npx tsgo --project tsconfig.json

tsgo是新版原生编译器提供的命令行工具,其功能等同于传统的tsc命令,且与旧版编译器可以共存,互不冲突。

如果你使用的是VS Code编辑器,还可以从扩展市场中安装“TypeScript (Native Preview)”插件,从而在编辑器中获得原生语言服务的支持。

编辑器体验的同步进化

性能的提升不仅限于命令行编译。官方的原生预览版同样包含了语言服务,这意味着你在编辑器中常用的功能均已得到支持,包括:

  • 智能代码补全
  • 定义、类型、实现的跳转
  • 查找所有引用
  • 安全的重命名
  • 悬停提示
  • 代码格式化与折叠
  • 快速修复建议

开发团队表示,编辑器功能曾是许多开发者对尝鲜原生版本持观望态度的原因。如今,这一关键缺口已被填补,原生版本在日常开发场景中已具备相当的成熟度。

升级建议:何时可以迁移?

我们的评估建议是:如果你追求极致的构建速度,并且项目具有一定规模,那么现在就值得一试。

  • 对于中小型项目:迁移成本极低,可以立刻感受到编译和编辑器响应速度的显著提升。
  • 对于大型或复杂项目:建议在开发分支或测试环境中先行体验。官方基于两万余个测试用例表明,新编译器在绝大多数情况下能输出与旧版一致的类型检查结果。
  • 需要特别注意的情况:如果你的项目有特殊的构建需求,例如需要将代码输出(emit)到非常古老的ES5标准,或依赖某些基于旧版TypeScript API的工具链,则需保持谨慎。目前,原生版本在对老环境的支持、某些装饰器/emit模式以及旧API的完全兼容性方面尚有完善空间。

总而言之,只要你的项目不属于那种“年代久远、牵一发而动全身”的遗留系统,现在尝试原生版本将能获得显著的效率回报。

总结

TypeScript 7的原生预览版现已足够稳定和高效,能够胜任编译、开发和上手的全部流程。

如果你重视构建时间、追求编辑器的流畅体验、并关注团队的整体开发效率,那么这次升级绝对值得你投入时间尝试。这或许标志着TypeScript正式迈入了真正的云原生高性能时代

您需要登录后才可以回帖 登录 | 立即注册

手机版|小黑屋|网站地图|云栈社区 ( 苏ICP备2022046150号-2 )

GMT+8, 2025-12-10 19:57 , Processed in 0.074238 second(s), 37 queries , Gzip On.

Powered by Discuz! X3.5

© 2025-2025 云栈社区.

快速回复 返回顶部 返回列表