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 ...
随机推荐
- 软件——Hexo-NexT配置个人博客
一.安装NexT Hexo 安装主题的方式非常简单,只需要将主题文件拷贝至站点目录的 themes 目录下, 然后修改下配置文件即可.具体到 NexT 来说,安装步骤如下. 1.克隆最新版本 在终端窗 ...
- Java运行时数据区域划分
Java虚拟机在执行Java程序的过程中会把它所管理的内存划分为若干个不同的数据区域.这些区域都有各自的用途,以及创建和销毁时间.根据<Java虚拟机规范(Java SE 7版>的规定,J ...
- linux下shell脚本中sed命令的用法
先来给一个案例: #将old.sql文件中的符号“|”替换为“,”,并保存到test.sql文件中 sed "s/|/,/g" "old.sql"> te ...
- php 直接跳出嵌套循环
break 结束当前 for,foreach,while,do-while 或者 switch 结构的执行. break 可以接受一个可选的数字参数来决定跳出几重循环. <?php $arr = ...
- spark模型运行时无法连接摸个excutors异常org.apache.spark.shuffle.FetchFailedException: Failed to connect to xxxx/xx.xx.xx.xx:xxxx
error:org.apache.spark.shuffle.FetchFailedException: Failed to connect to xxxx/xx.xx.xx.xx:xxxx 定位来定 ...
- 一个hql 关键字member(非mysql)引起的 vo 数据 保存数据库错误
2015-03-19 14:16:29,285 ERROR [Thread-3] (DAOHelper.java:312) - updateByEntityPK:com.agileeagle.dao. ...
- 详解 NIO流
在观看本篇博文前,建议先观看本人博文 -- <详解 IO流> NIO流: 首先,本人来介绍下什么是NIO流: 概述: Java NIO ( New IO )是从 Java 1.4 版本开始 ...
- 5. react父子组件
1. 父组件如何获取子组件的方法以及属性? 1.)父组件: render( ){ console.log( this.refs.getmethod ): return ( <div> &l ...
- 常见的Web源码泄漏漏洞及其利用
Web源码泄露的漏洞: git源码泄露 svn源码泄露 hg源码泄漏 网站备份压缩文件 WEB-INF/web.xml 泄露 DS_Store 文件泄露 SWP 文件泄露 CVS泄露 Bzr泄露 Gi ...
- 初识Cobalt Strike
简介 Cobalt Strike 一款以metasploit为基础的GUI的框架式渗透工具,集成了端口转发.服务扫描,自动化溢出,多模式端口监听,win exe木马生成,win dll木马生成,jav ...