写点什么

TypeScript 2.5 发布,增加语言级重构

  • 2017-09-10
  • 本文字数:852 字

    阅读完需:约 3 分钟

在 TypeScript 2.5 版本中,Microsoft 专注于提高开发人员的生产力,其范围已经超出了代码编辑器所提供的常见功能。

习惯于类型语言(如 C#)的开发人员喜欢使用那些可以轻松执行常见重构的工具。现在 TypeScript 可以利用其语言代码知识来执行 Extract FunctionExtract Method 的重构。但 TypeScript 是一种语言服务而非编辑器,因此将此功能添加到语言服务中意味着所有的编辑器都可以通过挂接服务来实现重构。TypeScript 项目经理 Daniel Rosenwasser 表示,该团队注重提高开发人员的体验,而不仅仅是语言:

TypeScript 是基于编辑经验开发的一种语言,因此我们团队在编辑器 / 类型检查器以及支持编辑器(如 VS Code)的语言服务方面投入了精力。它不仅仅是 VS 和 VS Code,这些变更对任何使用我们语言服务的编辑器都有效,因此,我认为这些编辑功能对 TypeScript 用户来说很有价值。

这些重构将在 VS Code 和 Visual Studio 中得到应用。

微软还通过捕获 JSDoc 类型声明和不正确的类型引用的意外用法,来提升工具集的“快速修复”。在 TypeScript 2.1 中首先提供了快速修复语言服务的 API ,包括:拼写错误、丢失 import 、丢失 this 以及未使用的声明。更多方面的修复功能已经完成规划

这次发布的版本并不侧重于语言特性,但其中唯一值得注意的就是可选的 catch 变量。当开发人员需要捕获错误时这个特性就非常有用,开发者不必关心这个错误的实际内容。这个特性实际上是 ECMAScript 提案的一部分。以下示例未包括捕获错误的声明,现在这么写是成立的:

复制代码
try {
const result = someMethodThatWillThrowAnException();
}
catch {
contents = createDefaultContents();
}
{1}

和以前一样,最新版本的 TypeScript 可以通过 npm install -g typescriptor 或通过 NuGet 来安装。

查看英文原文: TypeScript 2.5 Released, Adds Language Level Refactoring


感谢冬雨对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们。

2017-09-10 19:003033
用户头像

发布了 376 篇内容, 共 204.9 次阅读, 收获喜欢 949 次。

关注

评论

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

遭GitHub连夜封杀下架?被泄露的阿里内部Java面试手册到底有多强?

Java架构师迁哥

CentOS共享windows文件夹

风翱

centos windows 磁盘挂载 4月日更

阿里内部资料:并发编程知识点总结

Java架构师迁哥

DataSphere Studio 0.9.1 版本发布

WeDataSphere

大数据 微众银行 WeDataSphere DataSphere Studio 数据应用开发平台

架构训练营作业第一期

预测师

再聊 TCP backlog

AI乔治

Java 架构 TCP TCP/IP

由 JVM Attach API 看跨进程通信中的信号和 Unix 域套接字

AI乔治

Java 架构 jdk JVM

架构实战营作业--学生管理系统

Simon

架构实战营

学生管理系统

focus

刚火了的中台转头就拆,一大波公司放不下又拿不起来!

小傅哥

Java 架构 中台 小傅哥 海盗奇兵

一个计算机专业上岸的学长心得体会

🌍

4月日更 专升本

「编程模型」C++组合逻辑

顿晓

C++11 4月日更 std::function

如何在 Mac 下用 Clion 调试 MySQL 源码

AI乔治

Java MySQL 架构 调优

通过调试 Nginx 源码来定位有趣 Nginx 转发合并斜杠和编码问题

AI乔治

Java nginx 架构

【译】如何编写Go代码(使用GOPATH)

xcbeyond

Go 语言 4月日更 GOPATH

模块一作业

Focused

ES6面向对象 动态添加标签页

Chalk

JavaScript 大前端 ES6 4月日更

Wireshark 数据包分析学习笔记 Day27

穿过生命散发芬芳

Wireshark 数据包分析 4月日更

模块一:作业

去北方

架构实战营

架构实战营0期作业1

sjj

架构实战营模块 1 作业

Lukefang

架构实战营

看我如何在面试官前吹牛P

yes

面试

微信业务架构和学生管理系统

thewangzl

Visual Studio Code 插件之 - Git History

HoneyMoose

你可以伤害我,但是不能侮辱我

小天同学

人生 自我思考 个人感悟 4月日更 处世态度

架构实战营模块 1 作业

夏日

架构实战营

【学习总结】模块1:为何架构设计能力难以提升?

小李

架构实战营

架構實戰營 - 模塊 1 作業

Frank Yang

架构实战营作业--业务架构图

Simon

架构实战营

架构实战营模块1 课后作业

Neil43

架构实战营

TypeScript 2.5 发布,增加语言级重构_JavaScript_David Iffland_InfoQ精选文章