很早之前就听说TypeScript了(以下简称TS),但总是用难以抽出时间给自己找到这个冠冕堂皇的理由。最近又心血来潮,打算写TS的博客了,毕竟TS核心开发者也是C#之父,像我这么热爱C#的人,怎么可能不喜欢C#之父开发的TS呢,有点爱屋及乌了。这里附一张C#之父Anders Hejlsberg的图片。

这篇博客不讲技术细节,只讲TS利好的一些信息以及它的一些优点,还有以后所有的TS资料的目录都放在这篇博客了。这些博客有些是翻译的,当然这里的翻译是基于本人的思考而不是纯粹地机器翻译,还有去除了一些难以翻译而不影响阅读的语句。除此之外,这里还会放一些个人搜集到的老外写的优秀的教程。

一些对于TS利好的信息:

  1. Delphi、C#之父 Anders Hejlsberg 近日首次访华,并在10月24日和27日参加了两场见面会,分享了他目前领导开发的TypeScript项目,并与国内前端开发者近距离交流。
  2. TypeScript最近发布了1.6版本,它在社区里的接受度也越来越高,比如有人从CoffeeScript迁移到TypeScript,也有人认为它比Facebook的Flow更好。这一切都要归功于Anders为TypeScript带来的优秀设计。
  3. Anders创造了新语言TypeScript,这是兼容JavaScript的语言。今年3月,谷歌的Angular团队宣布了它与微软TypeScript团队在Angular 2上紧密合作,Goole用TS写Angular 2。
  4. 在国内,也有HTML5游戏引擎Egret使用TypeScript进行开发。
  5. 看到知乎上,绝大多数开发者都对TS持积极态度,点击这里查看
  6. …此处省略若干字。

一些对Anders Hejlsberg的评价:

  1. 如果不是他那专注的神情,以及现场见证开发者对他的狂热崇拜,很难想象这位外表并不出众、甚至非常普通的老外就是从美国专程赶来中国参加10月27日举行的微软技术大会的编程巨匠、C#之父——安德斯·海尔斯伯格。
  2. 和国内开发者积累多年开发经验后会选择转向管理工作不一样,Anders在过去的四十年来一直从事编程工作,因为这是他的兴趣、也是他最大的爱好。
  3. 他并不知道开发者对他有多么崇拜!因为,他可以坚持40年从事开发工作;他在微软开源工作上起到了有史以来最大的推动作用;他创造的C#多年来一直是十大编程语言之一;他开发的TypeScript令谷歌也忍不住要用;以及他被盖茨在96年亲自以数百万美元的高薪挖到微软!他是传奇,更是榜样。
  4. 开源信徒:Anders对开源精神的认同和身体力行让人惊讶,他现在在Github上每天要提交十多次代码,很难想象他来自微软,当然,微软现在其实也在拥抱开源,并且这其中也有Anders的努力。
  5. Anders在语言设计、开发工具、编译器等诸多领域都有非常深厚的功底,这为他设计出C#语言打下了基础,C#语言被公认为设计非常优秀的语言,作为它的创造者,Anders毫无疑问是一位语言设计的大师。
  6. …此处省略若干字。

Anders 对于JS和TS的趋势看法:

Anders本人这么认为:

我愿意努力推出好的编程语言,使每一个程序员更富有效率地工作。如果一个语言已经是让编程员非常有效率了,再进一步改进它的机会就不多了。我认为JavaScript代表了一种趋势,而且现在有很多人在用它,它以后也会变成企业级的编程语言,但它中间同时又有那么多的问题,所以我们就想一定要把这个问题解决好,让它变成一个更好的编程语言。

我们添加了很多的东西,使TypeScript能更好的支持大型应用的开发,我觉得这个过程非常有意思。

TypeScript不追求替代JavaScript,没有计划直接运行在浏览器、系统里,它仅仅关注在编译到JavaScript之前的事情,编译之后的事情,诸如JavaScript性能调优等等,并不关心。

TypeScript最大的目的是让程序员更具创造性,提高生产力,它将极大的增强JavaScript编写应用的开发和调试环节,让JavaScript能够方便用于编写大型应用,进行多人协作。

TS的一些优点:

两大特性:

  1. 给JavaScript加上可选的类型系统,很多事情是只有静态类型才能做的,给JavaScript加上静态类型后,就能将调试从运行期提前到编码期,诸如类型检查、越界检查这样的功能才能真正发挥作用。TypeScript的开发体验远远超过以往纯JavaScript的开发体验,无需运行程序即可修复潜在bug。
  2. 另一个特性是支持未来的ES 6甚至ES 7,最近的更新都与此有关。在TypeScript中,你可以直接使用ES 6的最新特性,在编译时它会自动编译到ES 3或ES 5。

优点细节浏览:

  • TS是一个应用程序级的JavaScript开发语言。
  • TS是JavaScript的超集,可以编译成纯JavaScript。
  • TS跨浏览器、跨操作系统、跨主机,开源。
  • TS始于JS,终于JS。遵循JavaScript的语法和语义,方便了无数的JavaScript开发者。
  • TS可以重用现有的JavaScript代码,调用流行的JavaScript库。
  • TS可以编译成简洁、简单的JavaScript代码,在任意浏览器、Node.js或任何兼容ES3的环境上运行。
  • TypeScript比JavaScript更具开发效率,包括:静态类型检查、基于符号的导航、语句自动完成、代码重构等。
  • TS提供了类、模块和接口,更易于构建组件。

说了这么多,无非就是想问一下,你的选择:YES or NO?

如果是Yes,请继续学习以下目录,否则,抱歉地给您返回一个return。



下面是一些学习TS的一些网站:

TS官网:http://www.typescriptlang.org/

TS源码:https://github.com/Microsoft/TypeScript

MSDN的TS板块:http://blogs.msdn.com/b/typescript/

StackOverFlow的TS板块:http://stackoverflow.com/questions/tagged/typescript

CodeProject上的TS博客:http://www.codeproject.com/search.aspx?q=typescript&x=0&y=0&sbo=kw

TS中文资料最全的地方:http://www.cnblogs.com/farb/category/753431.html


一些优秀的文章:

TypeScript——Web前端开发的救赎:http://m.blog.csdn.net/blog/he_8134/10954049

我用 TypeScript 语言的七个月:http://blog.jobbole.com/43675/?utm_source=rss


欢迎各位分享你觉得好的TS学习网站,如果真不错,我会添加到上面。

TypeScript的全部资料,以后都放这儿了的更多相关文章

  1. 2020-07-13:es是去查id再根据id去查数据库这种方式好,还是所有数据都放es,直接去查es好?

    福哥答案2020-07-13: 有人觉得第一种方法好,也有人觉得第二种方法好.如果搜索字段远小于显示字段,比如搜索字段为3个,显示字段有20个,这个时候用第一种方法好.es+hbase,一般这样搭配. ...

  2. 你想要的Java资料这里都有!!!

    你想要的Java资料这里都有!!!  [复制链接]       1.资源标题:程序员的SQL金典(完整) 资源地址:http://down.51cto.com/data/2207566 2.资源标题: ...

  3. 微信5.4安卓版重回ios风格 导航菜单都放底栏位置

    微信5.4安卓版发布更新了,由于本人的手机设置软件自动更新,中午的时候才发现微信换成了5.4版本,启动微信后是一个大大的“转账,就是发消息”,进入微信界面有点小惊喜,导航菜单都改为底部tab方式,顶部 ...

  4. 使用Typescript来写javascript

    使用Typescript来写javascript 前几天尝试使用haxejs来写javascript,以获得静态类型带来的益处.虽然成功了,但很快发现将它与angularjs一起使用,有一些不太顺畅的 ...

  5. 转职成为TypeScript程序员的参考手册

    写在前面 作者并没有任何可以作为背书的履历来证明自己写作这份手册的分量. 其内容大都来自于TypeScript官方资料或者搜索引擎获得,期间掺杂少量作者的私见,并会标明. 大部分内容来自于http:/ ...

  6. TypeScript Modules(模块)

    本文概述了TypeScript中如何使用模块以各种方式来组织代码.我们将涵括内部和外部的模块,并且讨论他们在适合在何时使用和怎么使用.我们也会学习一些如何使用外部模块的高级技巧,并且解决一些当我们使用 ...

  7. TypeScript 的声明文件的使用与编写

    https://fenying.net/2016/09/19/typings-for-typescript/ TypeScript 是 JavaScript 的超集,相比 JavaScript,其最关 ...

  8. 金三银四季来了!Java 面试题大放送,能答对70%就去BATJTMD试试~

    摘要: 2019,相对往年我们会发现今年猎头电话少了,大部分企业年终奖缩水,加薪幅度也不如往年,选择好offer就要趁早,现在开始准备吧,刷一波Java面试题,能回答70%就去BATJTMD大胆试试~ ...

  9. [转] 高频 mos 选择需要考虑相关资料

    节选自 http://www.dianyuan.com/bbs/987183.html [草根大侠]贴 关于MOS管导通内阻和米勒电容(Qgd)差异对效率的影响 http://www.epc.com. ...

随机推荐

  1. 几篇关于VisualStudio的调试工具文章

    现代的软件变得日益复杂,强大的调试功能也变得日益重要起来.在VisualStudio的最近几个版本中,在调试工具方面也是增强了不少的,本文转录了几个微软官方介绍的一些新增的调试功能的文章,如果能很好的 ...

  2. WebForm---登陆状态保持(Cookies内置对象)

    登录状态保持: 首先做一个登录界面,点击 登录按钮 protected void Page_Load(object sender, EventArgs e) { Button1.Click += Bu ...

  3. iframe自动适应高度

    iframe代码,注意要写ID <iframe src="test.html" id="main" width="700" heigh ...

  4. 如何使用本地yum源?

    首先为大家介绍在Centos系统上如何利用系统光盘/镜像作为yum源,实现程序包的安装等操作 1.首先在VM虚拟机上确保已载入光盘镜像,载入成功后显示如下效果. 2.挂载光盘镜像文件,使用命令: mo ...

  5. Spring RMI (Spring 远程方法调用)

    所需jar包...?    不纠结,一股脑儿全导! 源码地址:http://pan.baidu.com/s/1jG8eOmy 先放结构图如下,客户端和服务端都在一个项目中.也可以把服务端的xxx导成j ...

  6. win8.1 vs2010 C++环境下 编译Android Adb.exe

    1 IntelliSense: cannot open source file "usb100.h"  adb 这是因为没有安装sdk造成的.win7下安装wdk,vs2010能够 ...

  7. html file控件选择文件后立即预览 js实现

    //上传图片后立即预览 file对象,图片容器id function showImg(fileObj,imgId) { var file=fileObj.files[0]; var r = new F ...

  8. cookie 的“Value”=“xxxxx,xxxxx”部分无效

    cookie 的“Value”=“xxxxx,xxxxx”部分无效 在一些网站中有时候会遇到Cookie的值为逗号 但是在.Net中Cookie的值是不能直接使用逗号的 如果使用形如 C#代码 1.C ...

  9. Odoo10尝鲜: 退货

    Odoo sale / purchase 在 v9 改进之后, 开立发票的入口 不再像之前的版本,有多个来源,例如 订单 交货单 记工单 分析分录     现在只有一个入口,只需要在 订单上开票,这样 ...

  10. equals(==),toString

    equals/==: 只有指向同一个对象是,才返回true. 特殊: String s1 = new String("hello"); String s2 = new String ...