写点什么

为何 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:193201
用户头像

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

关注

评论

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

区块链RWA系统的运营

北京木奇移动技术有限公司

区块链技术 软件外包公司 RWA系统开发

区块链ETF系统的功能分解

北京木奇移动技术有限公司

区块链技术 软件外包公司 区块链ETF

通义灵码编程智能体,上线!

阿里巴巴云原生

通义灵码

《算法导论(第4版)》阅读笔记:p9-p9

codists

算法

Gitea Enterprise 23.8.0 发布 - 本地部署的企业级 Git 服务

sysin

Gitea

抖音视频列表API接口(附代码示例)

tbapi

抖音API 抖音视频列表接口 抖音视频接口

彻底搞懂 MCP 是什么、和 API 的区别、对企业的价值,如何在企业落地、未来趋势丨社区来稿

声网

数造科技携DataBuilder亮相安徽科交会,展现“DataOps +AI”双引擎魅力

数造万象

大数据 AI 行业资讯 Data 科技

深圳金融科技交流会,探讨AI大模型重塑资管新生态

非凸科技

区块链ETF系统的优化

北京木奇移动技术有限公司

区块链技术 软件外包公司 区块链ETF

Invicti v25.5.0 发布,新增功能简介

sysin

invicti

零信任的用户行为分析: 通过综合策略解锁安全洞察力(一)

天翼云开发者社区

安全 零信任策略

玩转MCP | 一文看懂如何在 Trae IDE 中解锁 MCP

TRAE.ai

人工智能 开发者 #编程 MCP Trae

黑龙江等保测评最新消息如下

黑龙江陆陆信息测评部

AI智上 | 数智司库:某能源央企集团智慧司库建设领先实践

用友智能财务

信息化 用友 财务 数智化 司库

CodeBuddy编程神器上线!分享测评100%领福利,开发者专享通道

CodeBuddy

人工智能 编程

Arthas mc(Memory Compiler/内存编译器 )

刘大猫

人工智能 监控 Arthas 监控工具 mc

从表格到系统:Classmethod 用 NocoBase 构建员工信息管理系统

NocoBase

开源 低代码 表格 管理工具 员工信息管理

抖音商品详情API接口(附代码示例)

tbapi

抖音API 抖音数据采集 抖音商品详情接口 抖音商品sku接口

Q1收入猛增46%,AI出海致富的秘密,藏在昆仑万维财报里

脑极体

AI

云MES系统源码,支持 SaaS 多租户,支持二次开发

万界星空科技

开源 mes 开源mes mes源码 万界星空科技mes

PPT美化AI哪个好?2个AI美化PPT软件盘点!

职场工具箱

效率 职场 PPT 办公软件 AI生成PPT

斯曼森携手亚马逊云科技,使用 Amazon Nova 打造中文法律大模型

亚马逊云科技 (Amazon Web Services)

区块链RWA系统的上线

北京木奇移动技术有限公司

区块链技术 软件外包公司 RWA开发

中烟创新入选“2024卓越软件项目优秀案例”

中烟创新

HarmonyOS运动开发:如何集成百度地图SDK、运动跟随与运动公里数记录

王二蛋和他的张大花

鸿蒙

从0到1带你搞定“微信广告转化归因”

Chris Zhang

归因分析 微信广告 广告归因

通义发布小尺寸多模态模型 Qwen2.5-Omni-3B;英伟达开源 ASR 模型 Parakeet TDT 0.6B 丨日报

声网

AI 调教指南!一文教会你如何在 Trae IDE 中配置自定义规则

TRAE.ai

人工智能 编程 开发者 MCP Trae

台达支持经济学人集团Economist Impact发布全球可持续AI报告

财见

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