您的位置首页  网络科技  前端

TypeScript之父:JS不是竞争对手

  首先,Hejlsberg 提到了在 TypeScript 发展初期时微软内部对开源的态度。众所周知,微软的前首席执行官史蒂夫·鲍尔默(Steve Ballmer)曾公开的表达过 “Linux 是一种癌症”言论。他认为,Linux 威胁着微软的所有知识产权。而 Hejlsberg 则持不同意见,他认为 Linux 并不是 Windows 的威胁,“事实证明,它恰恰相反。”

  Hejlsberg 称,早在 2010 年微软还在 Ballmer 的带领下时,他的团队就认为,开源战略是赢得 JavaScript 开发者的唯一途径。不过当时的他知道,想要在微软的总部将 TypeScript 作为一个开源项目推行,将会是很困难的一件事。

  Hejlsberg 透露,一开始 TypeScript 其实只是一个简单的想法,一个想看看他们是否可以做得比 JavaScript 更好一点的想法。我们建立了一些原型,并把它扔在了一起。但当时我们真的很清楚,我们吸引 JavaScript 社区的唯一方法就是开源。不过在当时的微软,这无疑是一个很破格的想法 。

  彼时的微软在 Ballmer 的领导下对开源持有一个非常矛盾且害怕的态度,Hejlsberg 的 TypeScript 团队也不可避免地在微软内部受到了。我们有点知道这是我们必须要做的事情,但我们没有做的经验。

  好在现如今,随着 TypeScript 项目日益成熟、微软开始大力拥抱开源,Hejlsberg 的 TypeScript 团队也终于不用再像之前一样如履薄冰了。

  TypeScript 孵化在一个有意思的阶段。彼时的谷歌 Chrome 浏览器,凭借其对 Web 标准的关注和一个名为 V8 的强大 JavaScript 引擎,已经成为了浏览器大战中的赢家。

  Hejlsberg 回忆称,谷歌打造了一个非常高效的 JavaScript 引擎,JavaScript 的效率也大幅提升。每个人都开始意识到,浏览器将成为构建真正应用的地方。他说,当时的开发人员已经开始为浏览器构建庞大的 JavaScript 应用,并努力用 JavaScript 编写这些应用。

  不过 Hejlsberg 认为,这种语言缺乏 modules、classes 等关键功能;重要的是,还缺乏在程序中通过规则创建秩序的 type system。而 TypeScript 的开发目的就是为了解决这些问题,为 JavaScript 构建更好的工具。此举的关键在于,要在语言中添加一个 type system,而不对 JavaScript 最受用户喜欢的那一部分内容造成影响。

  Hejlsberg 解释说,从某种意义上说,它是一个 type system,只存在于开发者体验期间,但在运行时它就消失了。不过在运行时,它能给你带来的只有好处,没有任何缺点。

  Hejlsberg 称,TypeScript 的唯一真正竞争对手是 JavaScript。因为这两种语言都是运行前端应用程序的必备语言,而 WebAssembly 却模糊了本机应用程序和浏览器应用程序之间的界限。

  Hejlsberg 认为,从某种意义上说,JavaScript 就像没有类型注解的 TypeScript。所以一种流行的使用 JavaScript 的方式是,人们不会直接在你的源代码中使用类型注解,而是将类型注解放在注释中(js.doc 注释),编译器则可以从这些注释中获得很多信息。

  因此,在过去的几年中,Hejlsberg 和他的团队则一直在增强对 js.doc 注释的支持,从而增强了直接使用 JavaScript 的能力。

免责声明:本站所有信息均搜集自互联网,并不代表本站观点,本站不对其真实合法性负责。如有信息侵犯了您的权益,请告知,本站将立刻处理。联系QQ:1640731186