官方宣布 Electron 现已支持 TypeScript

官方日前在其博客上宣布,Electron 已正式支持 TypeScript。

electron npm 包现在包含了一个 TypeScript 定义文件,该文件提供了整个 Electron API 的详细注释。即使你正在编写 vanilla JavaScript 代码 (可以理解为原生 JavaScript 代码),这些注释也可改进你的 Electron 开发体验。只需通过 npm install electron 命令在你的项目中获取最新的 Electron typing。

TypeScript 是由微软创建的一门开源编程语言,它是 JavaScript 的超集,添加了对静态类型的支持从而扩展了 JavaScript。TypeScript 社区近年来迅速发展,在最近的 Stack Overflow 开发者调查中,TypeScript 被列为最受欢迎的编程语言之一。GitHub, Slack, 和 Microsoft 的团队都使用它来编写可扩展的由数百万用户使用的 Electron app。

TypeScript 支持 JavaScript 中许多较新的语言特性,如类、对象解构和 async/await,但它们之间真正的区别功能是类型注解 (type annotations)。声明程序预期输入和输出的数据类型可帮助你在编译时找到错误从而减少 bug,并且注解也可以作为程序是如何运行的正式声明。

当使用 vanilla Javascript 编写库时,在写文档的时候,类型常常会被含糊地定义为事后的想法。函数通常会接收比所记录的更多的类型,或者函数会具有没有记录的不可见约束,这可能会导致运行时错误。

TypeScript 通过定义文件解决了这个问题。TypeScript 定义文件描述了库的所有功能及其预期的输入和输出类型。当库的作者将 TypeScript 定义文件与其发布的库打包在一起时,库的使用者可在编辑器内探索其 API,并立即开始使用它,通常也不需要查阅库的文档。

许多受欢迎的项目,如 Angular, Vue.js, node-github (现在还包括 Electron) 会编译自己的定义文件并将其与已发布的 npm 包打包在一起。对于不打包自己定义文件的项目,有一个 DefinitelyTyped,这是由社区维护的定义文件的第三方生态系统。

本文来自开源中国社区 [http://www.oschina.net]

上一篇:NoSQL生态系统——类似Bigtable列存储,或者Dynamo的key存储(kv存储如BDB,结构化存储如redis,文档存储如mongoDB)


下一篇:阿里云 Serverless 应用引擎(SAE)发布 v1.2.0,支持一键启停、NAS 存储、小规格实例等实用特性