【QCon】精华内容上线92%,全面覆盖“人工智能+”的典型案例!>>> 了解详情
写点什么

为何 Asana 开始用 TypeScript

  • 2014-12-25
  • 本文字数:661 字

    阅读完需:约 2 分钟

团队任务管理平台提供商 Asana 的一个代码库里有上万行的 JavaScript 代码。随着时间推移,其中的代码越来越多,维护也越来越难。他们需要一种不同的语言。最终,他们出于以下几个方面的考虑选择了 TypeScript。

首先,TypeScript 可以产生简洁的 JavaScript 代码,更容易与现有的代码集成。它与 JavaScript 有非常紧密的映射关系,熟悉 JavaScript 的开发人员很容易学习使用,而且对于生成的 JavaScript 代码,更容易推断出其性能。

其次,有强大的工具支持,并且能够轻松地与 JavaScript 庞大而活跃的开源社区融合,如 IntellJ/WebStorm 对 TypeScript 提供了强大的支持,而 DefinitelyTyped 是一个生机勃勃的社区,为许多开源库提供了 TypeScript 定义。TypeScript 还通过积极维护的 gulp/grunt 提供了很棒的构建工具。

再者,TypeScript 支持强类型,使编译器和 IDE 能够在编译时而不是运行时发现错误,IntellJ 对其也有很好地支持。支持重构以及更好的代码导航功能有助于编写出质量更高的代码;上述两点都有助于提高代码编写效率。

最后,TypeScript 支持静态类型。这有两个方面的好处:一是可以确保客户端和服务器端采用同样的协议;二是允许跳过运行时检查,如 React.js 可以从中获得显著的性能提升

另外,将浏览器代码迁移到 TypeScript 只是 Asana 正在进行的几项重大改进中的一项,感兴趣的读者可以关注其官方博客


感谢郭蕾对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ )或者腾讯微博( @InfoQ )关注我们,并与我们的编辑和其他读者朋友交流。

2014-12-25 04:192543
用户头像

发布了 1008 篇内容, 共 372.1 次阅读, 收获喜欢 340 次。

关注

评论

发布
暂无评论
发现更多内容

oracle和mysql语句有哪些异同点?

伤感汤姆布利柏

无缝对接,提升企业办公与薪酬福利管理效率!

聚道云软件连接器

案例分享

大模型开发:从数据挖掘到智能应用

百度开发者中心

自然语言处理 大模型 人工智能、

“数智乡村”数字人源码助力乡村振兴!

青否数字人

Python可视化工具集合来报道(下)

小齐写代码

在script标签写export为什么会抛错|type module import ES5 ES6 预处理 指令序言 JavaScript JS

Geek_ee6d52

前端 JavaScrip

思码逸企业版 4.0 特性之二:支持 DevOps 全工具链数据分析

思码逸研发效能

JavaScript和Java:看似相似但实际上截然不同

伤感汤姆布利柏

详解 JSON 文件的打开方法

Apifox

JavaScript json 程序员 前端 教程

AI数字人直播强势“出圈”24小时无限畅播!

青否数字人

数字人

电商“变法”,AI维新

脑极体

AI

区块链软件开发:创新、安全、智能的数字未来

区块链软件开发推广运营

dapp开发 区块链开发 链游开发 NFT开发 公链开发

基于Java开发的工作流管理系统,快速开发平台

金陵老街

DevData Talks | 金融大咖说:金融企业如何持续提升研发效能

思码逸研发效能

面试官:如何实现10亿数据判重?

王磊

Java 面试题

信息茧房的困境

老张

信息茧房 sora

IPQ9574/Breaking the speed boundary: exploring the innovative technologies of WiFi 7

wallysSK

基于OpenTelemetry实现Java微服务调用链跟踪

华为云开发者联盟

Java 微服务 Spring Boot 华为云 华为云开发者联盟

文档图像大模型在智能文档处理领域中的应用

百度开发者中心

人工智能 深度学习 大模型 智能文档

微信小程序制作步骤,开发成本低,轻松打造

天津汇柏科技有限公司

小程序开发 开发小程序

想要一个龙年头像,在线等挺急的

阿里巴巴云原生

阿里云 云原生 函数计算 Stable Diffusion

ACK One:构建混合云同城容灾系统

阿里巴巴云原生

阿里云 Kubernetes 云原生

思码逸企业版 4.0 特性之一:支持 DevOps 全工具链数据分析

思码逸研发效能

以太坊 Dencun 升级与潜在机会

TechubNews

Ethereum 区块链、 #Web3

C# 12 中新增的八大功能你都知道吗?

EquatorCoco

.net C语言 开发语言

为何Asana开始用TypeScript_JavaScript_谢丽_InfoQ精选文章