TypeScript 2.0 正式发布
9 月 22 日,TypeScript 2.0 正式发布了。
TypeScript 是微软开发的开源的编程语言,主要负责人是 C# 之父 Anders Hejlsberg。
TypeScript 成功将 JavaScript 的潜能与静态类型结合了起来,而且编译为 JavaScript。编译时类型检查可以避免很多潜在的 Bug,而且 TypeScript 的编辑器工具也大大提升了开发效率。
TypeScript 语言官网。
一起回顾一下 TypeScript 的发展之路。
发展之路
TypeScript 的第一个版本 —— TypeScript 0.8 于 2012 年发布。
2014 年,TypeScript 1.0 发布。
TypeScript 1.1 重写了编译器,性能提升 4 倍。
TypeScript 1.4 和 1.5 版本开始支持很多 ES2015/ES6 特性。1.5 开始支持模块和decorator。同时,支持 Angular 2 (前几天也正式发布了)采用 TypeScript,并和 Angular 团队合作,根据该项目的需要推动 TypeScript 的演进。
TypeScript 1.6 继续改进类型系统,支持 React/JSX,class 表达式等。
TypeScript 1.8 引入了 Module Augmentation、String Literal Types、Smarter Control Flow Analysis、Implicit Returns 等新特性。
现在,到了 2.0 版本。
TypeScript 2.0 新特性
紧跟 ECMAScript 规范,对 JavaScript 库和工具提供了更广泛的支持,提供了一个语言服务,使得 TypeScript 可以在各主流编辑器中得到一流的编辑体验。
具体来说,重要的亮点有:
Simplified Declaration File (.d.ts) Acquisition
Non-nullable 类型
Control Flow Analyzed Types
readonly 修饰符
号外
TypeScript 在微软有很多应用,最典型的如 Azure Portal。Azure Portal 是世界上用 TypeScript 编写的最大、最先进的单页 Web 应用(Single Page Web Application)。
在 10 月 20~22 日的 QCon 上海 2016 上,微软工程师 Jakub Jedryszek 将分享 《使用 TypeScript 构建大规模 Web 应用》。
问世 20 多年来,JavaScript 有很多重要变化。今天,它已成为最流行的编程语言,能够构建客户端或服务器端的大规模应用。然而,维护大规模的 JavaScript 代码库越来越困难。而 TypeScript 就是为构建大规模应用而设计的,过去4年也有着很大的发展。TypeScript 已经应用于包括 Angular 2、Ionic、Visual Studio Code 和 Azure Portal 在内的很多大规模项目中。
在本次演讲中,Jakub 将分享如何用 TypeScript 构建和维护大规模 Web 应用。他会介绍如何设置开发环境,如何使用现有的 JavaScript 库,以及如何测试等。他还会分享在设计 Azure Portal 这种超大规模单页 Web 应用中的经验教训。
本文转自d1net(转载)
TypeScript 2.0 正式发布的更多相关文章
- Angular4.0.0正式发布,附新特性及升级指南
本文首发地址:Angular4.0.0正式发布,附新特性及升级指南 作者|孙薇 编辑|尾尾 经历了6个RC版本之后,Angular项目组终于发布了新版,即正式版 Angular 4.0.0.新版的 A ...
- AppBox_v2.0完整版免费下载,暨AppBox_v3.0正式发布!
文章更新: AppBox v6.0中实现子页面和父页面的复杂交互 AppBox 是基于 FineUI 的通用权限管理框架,包括用户管理.职称管理.部门管理.角色管理.角色权限管理等模块. AppBox ...
- TypeScript 2.0候选版(RC)已出,哪些新特性值得我们关注?
注:本文提及到的代码示例下载地址 - Runnable sample to introduce Typescript 2.0 RC new features 作为一个Javascript的超集, Ty ...
- 整整十年 - Agent Framework for TypeScript 2.0
十年前,我发布了 Agent Framework for .NET 2.0 今天,Agent 又开始了新的旅程, 这次支持的语言是 TypeScript 2.0 上需求:init函数只能被调用一次 废 ...
- 在 Typescript 2.0 中使用 @types 类型定义
在 Typescript 2.0 中使用 @type 类型定义 基于 Typescript 开发的时候,很麻烦的一个问题就是类型定义.导致在编译的时候,经常会看到一连串的找不到类型的提示.解决的方式经 ...
- Socket.IO 1.0 正式发布,快速可靠的实时引擎
Socket.IO 是目前 Web 领域最火的实时引擎,用于实现基于事件的双向实时的通信.它适用于任何平台,浏览器或设备,专注于可靠性和速度.您可以将数据推送到客户端,并获得实时的计数,日志或图表. ...
- Django 1.6.0 正式发布,大幅改进事务处理
Django 1.6.0 正式发布了,查看官方发行说明. 下载地址:Django-1.6.tar.gz ,也可通过 pip 安装: pip install Django==1.6 要求 Python ...
- Apache Spark2.0正式发布
Apache Spark2.0正式发布 7月26日起Databricks开始提供Apache Spark 2.0的下载,这个版本是基于社区在过去两年的经验总结而成,不但加入了用户喜爱的功能,也修复了之 ...
- 【G-BLASTN 1.0正式发布】
[G-BLASTN 1.0正式发布]G-BLASTN使用GPU来加速NCBI-BLAST里的BLASTN模块,单块GTX780比四核CPU平均快6倍. http://www.comp.hkbu.edu ...
随机推荐
- docker 容器容器之间网络通信 docker-compose.yaml 配置固定ip
1.创建自己的桥接网络 $ docker network create --subnet=172.18.0.0/16 mynetwork 2.docker-compose.yaml 文件格式demo ...
- Java对字母大小写转换
Java对字母大小写转换 1.小写——大写String aa = "abc".toUpperCase(); 2.大写——小写 String bb = "ABC" ...
- json文件操作
1.把字典或list转换成字符串方法 json.dumps() 2.把字符串转换成字典方法 json.loads() 3.indent 存储文件时每行加缩进数 4.ensere_asci 文件中有中文 ...
- word多级列表应用
- Date 对象-->概念、创建以及方法
1.概念: Date 对象用于处理日期与时间. 2.创建: 方法1:直接用Date()函数,返回值当前时间 格式:var d = Date(); 注意:不论Date()是否带参数,返回都是当前时间 举 ...
- mysql 单机多实例配置
如果你想在一台机器上进行主从配置实验,本篇可以帮助你实现愿望 [client] #password = your_password port = 3306 socket = /tmp/mysql.so ...
- Docker安装Redis并介绍漂亮的可视化客户端进行操作
1 简介 Redis是使用ANSI C语言开发的基于Key-Value的高性能NoSQL数据库,在解决高并发.高可用等一系列问题中,它扮演着重要的角色.它的优势主要有: 速度快. 持久化. 原子性. ...
- CTF中的命令执行绕过
本位原创作者:Smity 在介绍命令注入之前,有一点需要注意:命令注入与远程代码执行不同.他们的区别在于,远程代码执行实际上是调用服务器网站代码进行执行,而命令注入则是调用操作系统命令进行执行. 作为 ...
- Labyrinth 树的直径加DFS
The northern part of the Pyramid contains a very large and complicated labyrinth. The labyrinth is d ...
- 一个好的olap框架
一.何为一个好的olap框架? 框架大概分为两种: (1)底层技术框架,专注于抽象底层技术,如网络通信netty.中间件kafka等 (2)开发人员框架,专注于提高开发效率,如spring的面向切面和 ...