爲何還須要學習TypeScript

 

 

開篇前端

 

TypeScript 是由 C#語言的創始人 Anders Hejlsberg 設計的一種編程語言,設計的初衷就是爲了幫助 JavaScript 的開發人員能像相似高級語言c#,Java那樣編寫代碼,好比使用高級語言的強類型、面向對象、語法檢查,代碼編譯等特色。TypeScript包含一個編譯器,能夠將用TypeScript 編寫的代碼轉換爲原生的 JavaScript。java

 

TypeScript 目前最新的版本是 3.x 了,是目前微軟最好的產品之一,如今徹底免費而且使用 Apache 協議開源了 TypeScript,併成爲社區很活躍的框架之一。連谷歌這樣的死對頭,也擁抱 TypeScript ,在 Angular 2.0 版本就開始集成 TypeScript,若是你不學 TypeScript,Angular 這個框架就沒法使用。目前 React 、Vue 在將來的版本都在考慮集成 TypeScript 。在能夠預計的將來,若是還不開始學習 TypeScript,咱們就不能使用這些框架的新特性了。web

 

如下幾個觀點就是筆者強烈你們學習TypeScript的緣由,純屬我的觀點,若有不恰當地方,歡迎各位指正。編程

 

01c#

JavaScript 發展迅速後端

從目前 JavaScript 的發展和應用趨勢來看,它的發展實在是太快了,你能夠用它進行 web開發、移動應用開發、桌面軟件開發、後端開發,以及將來成爲趨勢的 VR、WebGL及物聯網的應用開發等,它的標準從2015年開始每一年都會更新,更新實在是太快了,及時這樣,可是與 java 和 c# 這些成熟的高級語言還有很大的距離。瀏覽器

 

使用 TypeScript 能夠幫你下降 JavaScript 弱語言的脆弱性,幫你減小因爲不正確類型致使錯誤產生的風險,以及各類 JavaScript 版本混雜形成錯誤的風險。前端框架

 

02框架

咱們須要強類型的 JavaScript編程語言

從表面上看,TypeScript 像普通的 JavaScript 代碼,這一特色就下降咱們初學者的難度,所以不得不佩服微軟的良苦用心。TypeScript 只是把高級語言的強類型這個最主要的特徵引入 JavaScript ,就解決了防止咱們在編寫 JavaScript 代碼時由於數據類型的轉換形成的意想不到的錯誤,增長了咱們排查問題的困難性。它爲 JavaScript 上了一把高級語言強類型的鎖,避免這類問題的產生,使用 TypeScript,你的代碼多是這樣的:

 

 

 

 

也許你以爲這段代碼很日常,若是你這樣調用 increaseAge(cat),TypeScript會拋出一個錯誤,提示你 increaseAge 函數的參數必須是數字類型。若是使用原生的 JavaScript ,原生編譯器則不會產生錯誤,還能正常的返回 Merlin1 的內容,這可不是咱們指望的,這就大大增長了咱們開發過程當中潛在的風險,排查錯誤的困難性。

 

這就是 TypeScript 的魅力所在,提早幫咱們發現代碼出現錯的風險。

 

03

按需輸出 JavaScript 版本

前面說起到 JavaScript 發展迅速,估計 JavaScript 的創始人也沒有想到能發展到今天的地步,JavaScript 的版本如今幾乎每一年都會有更新,若是你要寫出兼容性的腳本,對於每位開發者就是一個至關大的挑戰。TypeScript 卻很好的解決了此問題,你能夠按需輸出你須要的腳本,好比 ECMAScript 三、ECMAScript 5 、ECMAScript 6 。

 

04

代碼標準化利於團隊開發

因爲 JavaScript 自己語言的特色,還有其版本迭代太快的緣由,團隊成員使用 JavaScript 時很容易隨意發揮,不受規範約束。你的團隊固然能夠針對這些版本的 JavaScript 作出使用規範,引入一些代碼質量檢測插件,好比eslint。整理這些內容,估計就須要花很多的時間,在團隊推廣和使用制定的規範又要花一段時間。與其花這些時間進行整理,還不如在TypeScript 的基礎上,結合 TypeScript 的特色作一套標準便可來應對 JavaScript 版本不斷的更新迭代。

 

05

主流框架及最新特性的支持

文章一開始筆者都說起到 Angular 2.0 版本就開始集成 TypeScript,用於解決版本兼容性和弱語言的特色,從而互相推進了各自的發展。時至今日,React 、Vue也要加入 TypeScript 的陣營,所以咱們不得不去學好 TypeScript。

 

除了主流前端框架集成的問題,還有一個重要的緣由,TypeScript 緊跟 JavaScript 的發展,好比 ES7 、ES八、ES9 相關語言的新特性都支持,比瀏覽器支持的速度更快。這就意味着你能用最新的語言特性,編寫質量更高的 JavaScript。

 

 

 

若是你是 JavaScript 的新手,筆者不太建議你一上來就學習 TypeScript,建議你仍是從基礎的 JavaScript 學起。之因此有 TypeScript 這個工具,並非爲了吸引開發者學前端,而是爲每一個 JavaScript 開發者能像其它高級語言同樣編寫更健壯的代碼。

 

當初之因此有 JavaScript 就是爲了便攜和簡單性,可是隨着時間的發展,已經大大超出了當初設計者的初衷。若是是幾百行代碼還好,可是隨着多設備支持(pc、手機、各類移動終端及大屏設備),產品線的增加,項目愈來愈大,若是還用原始的方式編寫 JavaScript ,維護的難度可想而知。

 

學習TypeScript自己並不難。它像JavaScript同樣編寫和運行,只是增長一些新的理念和語法糖,咱們學起來也會更加順手。

 

今天的內容就到這裏,我說了這麼多,以上純屬我的愚見,不知道是否能打動你去學習 TypeScript 呢 ?你有什麼想法,歡迎到留言區發表你的意見。

相關文章
相關標籤/搜索