TypeScript是微软开发的用于创建复杂应用程序的JavaScript编程语言的超集,现在是该公司旗舰Visual Studio集成开发环境(IDE)的正式成员。
周二发布的Visual Studio 2013 Update 2包括TypeScript作为IDE的内置编程语言。该公司还发布TypeScript 1.0是该语言可生产版本的第一个候选版本。
“我们越来越多地看到人们使用JavaScript来编写大型应用程序,”微软c#语言首席架构师Anders Hejlsberg说,他也帮助创建了TypeScript。
Hejlsberg指出,JavaScript是用来编写小程序的。它在大型软件项目中表现不太好——涉及数十万行代码,甚至一百万行代码。
对于一个大型的JavaScript程序,Hejlsberg说:“维护一个代码库是非常笨拙的。”“你不能安全地重构任何东西,也没有大规模的结构化概念,比如类或模块。”
TypeScript与JavaScript非常相似,但也合并了传统的编程语言构造,如静态类型和对象类,这为高级IDE工具和更好的代码组织奠定了基础。
2012年推出在美国,TypeScript并不是一种全新的语言。它是ECMAScript的超集,Ecma国际标准组织维护的一种脚本语言规范。广泛使用的JavaScript基于ECMAScript。
然而,与JavaScript代码不同的是,TypeScript程序代码必须经过编译器——可以从微软获得开源编译器。输出格式为JavaScript,该代码可以在任何浏览器上运行,并被整合到任何JavaScript框架或服务器端技术中,比如node.js。
通过编译代码,TypeScript可以提供许多通常与更传统的编程语言(如Java和c++)相关的特性。
TypeScript提供静态类型,这要求开发人员在使用变量之前定义该变量的数据类型。它还包括泛型,它允许方法应用于不同的数据类型。
打字稿也带来了正式基于类的面向对象的编程概念的JavaScript,从ECMAScript中6,这是了Ecma将于今年晚些时候敲定借用新的类定义。尽管程序员可以创建JavaScript对象,语言没有办法提供创建类。
Hejlsberg说,通过使用Visual Studio的IntelliSense代码完成工具,集成静态类型和类允许IDE为开发人员提供更多的支持。TypeScript插件也可用于其他ide,比如Eclipse和JetBrains WebStorm。
TypeScript的早期用户之一是Adobe。Adobe需要为Windows 8创建一个数字发布查看器。当前的Windows开发环境提供了两种构建应用程序的方式,要么使用微软的XAML(可扩展应用程序标记语言)和c#,要么结合HTML、CSS(层叠样式表)和JavaScript Web技术。
“工程队不得不在JavaScript的背景下,”尼尔·恩斯,在的Adobe数字出版的高级产品经理说。他们也知道,但是,在JavaScript编写大型程序可能有问题。有许多工具来大规模JavaScript开发,比如CoffeeScript的和Falcon.js帮助,但是Adobe首选打字稿,因为它可以从Visual Studio中运行。
微软也一直在内部项目中使用这种语言,比如正在开发的基于web的Visual Studio版本Monaco。
“这是很清楚,即使打字稿仍处于发展初期,它是东西,可以给我们很好的效益,”恩斯说。
约押·杰克逊报道企业软件和通用技术的突发新闻IDG新闻服务。在推特上关注约押@Joab_Jackson。约押的电子邮件地址是Joab_Jackson@idg.com