Typescript 团队合做的利器

前言html

在介绍Typescript 以前,我须要隆重介绍一我的:typescript

安德斯·海尔斯伯格(Anders Hejlsberg,1960.12~),丹麦人,Turbo Pascal编译器的主要做者,Delphi和C#之父,同时也是·NET创立者。固然如今也是Typescript的创始者。目前是就任微软,是微软技术领域的智囊团之一。函数

 

1.简单介绍Typescript学习

http://www.typescriptlang.org/ 这是Typescript的官方网站,在这里,能够找到英文的关于Typescript的语法介绍,(我会在后面几节也介绍相关知识),TypeScript 是微软开发的 JavaScript 的超集,TypeScript编译后会生成JavaScript,项目能够载入生成后的JavaScript代码而后运行。若是有JavaScript的知识,学起来如鱼得水,学习的时候,推荐使用Visual Studio,作一个项目,有个强大的IDE支持,再好不过了。另外,Visual Studio对Typescript有着完美的支持,相似智能提示,错误提示,编译运行,工程文件管理等等。谁让Typescript是微软的又一个新生儿呢,固然,也有别的Typescript的编译器,这里就不在详述了。网站

2.书写JavaScript时候,你有什么烦恼?spa

  • JavaScript是个神同样的语言,灵活性之高,没有哪一种语言能够匹敌,如此高的灵活性,大虾和菜鸟,一样的功能,写出来的风格确定是大相径庭,如何去管理咱们的code?
  • JavaScript在任何IDE下,编译时候不会报错,可是在运行时,没有规律的JavaScript的错误是漫天飞。
  • 在书写JavaScript时候,若是没有modules的概念的话,没有遵循CommonJs的规范的话,那么本身写的JavaScript的变量必然会和别人写的重名变量冲突,或许甚至可能影响 第三方JS类库的正常使用。
  • 有没有更改变量名字的时候,是否是想死的心都有?
  • 你是否是有狠下心refactor的时候,可是,最终受不了JavaScript的折磨,放弃了?
  • 如此灵活但疯狂的JavaScript,你是否是对它爱恨交加呢?

3.找个老婆来管理桀骜不驯的JavaScript设计

JavaScript 只是一个脚本语言,并不是设计用于开发大型 Web 应用,可是最近Html5的流行,手机网页应用的不断发展,愈来愈多的项目使用纯JavaScript来开发,那么在编写JavaScript的是,如何提升代码质量,若是依靠JavaScript的自己的语言特性,太难了,我相信即便是大牛的Team,也不会轻易说我能解决这个问题。TypeScript由此而生,它帮助并实现了JavaScript如下这些特性。TypeScript 主要特色包括:code

  • TypeScript 是微软推出的开源语言,使用 Apache 受权协议
  • TypeScript 是 JavaScript 的超集.
  • TypeScript 增长了可选类型、类和模块
  • TypeScript 可编译成可读的、标准的 JavaScript
  • TypeScript 支持开发大规模 JavaScript 应用
  • TypeScript 设计用于开发大型应用,并保证编译后的 JavaScript 代码兼容性
  • TypeScript 文件扩展名是 ts,而 TypeScript 编译器会编译成 js 文件
  • TypeScript 语法与 JScript .NET 相同,若是你有C#的编写居然,那基本熟悉了Typescript的语法。
  • Typescript 能够更加方便的Debug项目。
  • Typescript 能够帮助实现相似程序集 assembly的管理。
  • Typescript 能够方便的实现Unit Test的管理

4.语法特性htm

  • 类 Classes
  • 接口 Interfaces
  • 模块 Modules
  • 类型注解 Type annotations
  • 编译时类型检查 Compile time type checking(这个过重要了,能够在程序运行以前的编译阶段,就能够发现错误。试想单纯的JavaScript怎么可能作到呢?)
  • Arrow 函数 (相似 C# 的 Lambda 表达式)

 今天就先写到这,后面我还会抽空更新相关的资料,项目中,咱们Team已经用Typescript在今年开发了3个大型JavaScript项目,并且用Typescript开发,书写UnitTest的时候,很是简单,这样,咱们的Project的代码容错率为 8/1000. 因此,我很是想推荐你们尝试下Typescript,用Typescript开发的时候,可能你会以为别扭,没有JavaScript书写那么的自由,若是没有质量保证的话,开发时间+查找问题时间+更改Bug时间 》远大于》 开发时间+Unit Test Time。本人在Typescript 0.8.1的时候开始使用,如今Typescript已经更新到0.9.5,感受很是不错,Typescript语法糖不断的创新,感谢微软所作的一切。blog

 

 为何选择Typescript

相关文章
相关标签/搜索