转载

TypeScript 2.0预览

Anders Hejlsberg再次来到2016年的微软Build大会,他谈了TypeScript的现状,预览了将会在未来几个月中提供的一些令人惊喜的特性。

Hejlsberg将他的演讲分成了三个主要部分,在第一个15分钟里,他重新讲述了TypeScript的精彩故事。“TypeScript:扩展的JavaScript”是他对这门语言的描述,TypeScript的目标是缩小“JavaScript的功能缺口”。演示程序涉及基本类型检查、语句补全以及编译器输出与源代码相比是什么样子。

在经过简单介绍之后,他展示了TypeScript自Build 2015以来的变化。该团队每3到4个月就有一次主要发布,去年共有4次主要发布。

在一个Angular 2演示程序中,Hejlsberg展示了如何将TypeScript编译器嵌入到浏览器中,消除了文件修改后重新编译代码这个单独的步骤。

他又使用React重复了同一个演示应用程序,展示了TypeScript识别JSX的能力,其中JSX是一种为React开发人员所喜爱的嵌入式标记技术。为了把这一点讲清楚,他重构了一个组件的名称,并展示了TypeScript如何更新整个项目中所有这个组件的引用,包括在嵌入式JSX代码中。该演示程序集成了 webpack 和社区驱动的 TypeScript加载器 。

对于我们的工具——Visual Studio和Visual Studio Code——我们的前进方向实际上是使用TypeScript基础设施作为JavaScript语言服务。Visual Studio Code已经切换并使用它。

该语言服务名为 Salsa ,Visual Studio Code在0.10.10版本中切换到它。

修改后的TypeScript编译器可以使用开发人员提供的任何 jsdoc 信息。此外,如果一个项目中有任何TypeScript定义文件,那么Salsa就可以使用它们为纯旧式的JavaScript提供语句补全,不需要TypeScript。

最后15分钟的介绍重点是TypeScript的未来。对于TypeScript 2.0,当前的路线图包括:

  • 非空类型;
  • 基于类型分析的控制流;
  • Async/await底层支持;
  • 只读属性;
  • 在函数中声明“this”类型;
  • 改进typings获取。

2.0版本预计在“数月”之后完成。

对于即将到来的非空类型,TypeScript 2.0将新提供一个名为 strictNullChecks 的编译器标识,剥夺一个类型为 undefinednull 的能力。 Number 只能是数值,永远不能是 undefinednull

在示例代码中演示了新增的非空类型和基于类型分析的控制流之后,Hejlsberg就可以宣告:“这段代码没有Bug”了。

在演讲的最后,一个功能强大的演示程序展示了新TypeScript类型检查的强大以及它如何能够轻松应对有时令人难以理解的JavaScript方式。“JavaScript有一些怪异模式,但你可以将这些怪异模式教给编译器,让它检查所有这些东西”,他补充道,“这太疯狂了!”

要了解更多有关TypeScript发展方向的细节,请观看完整的Channel 9视频“ TypeScript新特性 ”。

查看英文原文: TypeScript 2.0 Preview

原文  http://www.infoq.com/cn/news/2016/04/typescript-2-preview
正文到此结束
Loading...