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

相關文章
相關標籤/搜索