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 ...
随机推荐
- 1017 Queueing at Bank (25 分)
Suppose a bank has K windows open for service. There is a yellow line in front of the windows which ...
- 世界疫情app柱形图显示
访问云服务器的mysql实现数据的获取.最后通过柱形图的形式将数据显示在页面上: 遇到的主要困难时对于云服务器的mysql连接本地的navicat之间事情,最后通过网上的各种解决办法完成了相关的内容. ...
- "小号文本"组件:<small> —— 快应用组件库H-UI
 <import name="small" src="../Common/ui/h-ui/text/c_tag_small"></impor ...
- matplotlib TransformNode类
TransformNode 是所有参与变换的类和所有需要无效自己或祖先的类的基类 方法: __init__(shorthand_name=None): 参数 [shorthand_name]: 别名 ...
- centos7 NAT链接配置(静态ip/修改网卡名为eth0)|1
NAT的静态ip设置并且修改网卡名为eth0 1 cd /etc/sysconfig/network-scripts/ mv eno16777736 ifcfg-eth0 #修改名称 vi eth0 ...
- AJ学IOS 之微博项目实战(11)发送微博自定义TextView实现带占位文字
AJ分享,必须精品 一:效果 二:代码: 由于系统自带的UITextField:和UITextView:不能满足我们的需求,所以我们需要自己设计一个. UITextField: 1.文字永远是一行,不 ...
- 知识点一:OSI模型初识
OSI(开放系统)模型是一组协议的集合,它使得两个不同的系统之间能够互相通信,分为七层 第一层:物理层 物理层负责把逐个的比特(01)从一个节点移动到下个节点 具体体现在如何把比特转换成电或者光信号. ...
- python画图——雪花(科赫曲线)
科赫曲线是一种分形,其形态非常像雪花,因此又被称作科赫雪花.雪花曲线. 下面是用python的turtle包让我们来实时画一个 import turtledef koch(t,n): #定义一个函数 ...
- 远程登录redis
没想到吧,我居然已经摸到了redis. 远程登录redis redis-cli -h 127.0.0.1 -p 6379 ip地址和端口记得换成自己的
- BUUOJ Misc刷题大作战
你竟然赶我走 随便一个txt文件都可以拿 LSB 当然还有别的,根据里面左右左右变化,在0管道有变化,然后把下面的三个0打钩,导出png,一个二维码,扫出来 乌镇峰会种图 只要会用winhex打开文件 ...