面對(duì)TypeScript,堅(jiān)持JS的理由是什么?

  “前端工程師用 JavaScript,C#工程師用 TypeScript,Ruby工程師用 CoffeeScript,Java工程師用Dart?!蹦銓?duì)這句話怎么看呢?本文主要討論了JavaScript和TypeScript之間的恩怨情仇,看看在大規(guī)模開發(fā)的場景下到底誰更強(qiáng)?企業(yè)更側(cè)重于選擇哪一種?

創(chuàng)新互聯(lián)于2013年開始,先為藤縣等服務(wù)建站,藤縣等地企業(yè),進(jìn)行企業(yè)商務(wù)咨詢服務(wù)。為藤縣企業(yè)網(wǎng)站制作PC+手機(jī)+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問題。

JavaScript雖說集程序員萬千寵愛于一身,但對(duì)于企業(yè)大規(guī)模開發(fā)很難管理。所以企業(yè)開發(fā)都選用什么工具呢?TypeScript提供了一個(gè)有吸引力的選擇!眾所周知,TypeScript是JavaScript的擴(kuò)展,但為什么各大排行榜上JavaScript總是排名更靠前呢?

面對(duì)TypeScript,堅(jiān)持JS的理由是什么?

在最新一期的TIOBE排行榜中,JavaScript排名第6,而前十名根本沒有TypeScript的影子,那為什么企業(yè)大規(guī)模開發(fā)都會(huì)選用TypeScript呢?

對(duì)于越來越多的程序員來說,JavaScript是早已掌握了的技能,因此一直占據(jù)著編程語言排行榜前十名的位置。但JavaScript從來都不是團(tuán)隊(duì)構(gòu)建大型復(fù)雜應(yīng)用程序的首選,企業(yè)長期以來都喜歡Java和C#等強(qiáng)類型語言,但這些語言的虛擬機(jī)在瀏覽器中從來沒有一個(gè)歸屬。作為JavaScript的延伸,TypeScript既彌補(bǔ)了JavaScript在大規(guī)模開發(fā)過程中的不足,又具備了適合各類瀏覽器的虛擬機(jī)。

 正面交戰(zhàn):Github熱度如何?

作為前輩,JavaScript的Star數(shù)量確實(shí)遠(yuǎn)高于TypeScript,但熱度確不及TypeScript,TypeScript是微軟的開源項(xiàng)目,其貢獻(xiàn)者絕大多數(shù)都是微軟的工程師,提交量達(dá)到20212,而JavaScript主要是Netscape和Mozilla基金會(huì)開源的,貢獻(xiàn)者絕大多數(shù)都是來自這兩大組織的成員,而提交量僅有1546份,可見TypeScript社區(qū)更為活躍、問題修復(fù)與反饋也十分及時(shí)。

面對(duì)TypeScript,堅(jiān)持JS的理由是什么?

面對(duì)TypeScript,堅(jiān)持JS的理由是什么?

TypeScript優(yōu)勢:簡單易用!

對(duì)JavaScript有效的對(duì)TypeScript同樣有效,因此可以通過簡單地將.js的文件擴(kuò)展名更改為.ts來使用TypeScript編譯器和TypeScript感知工具。

TypeScript具備absolutelytyped.org收集類型定義,提供數(shù)百個(gè)JavaScript庫(包括jQuery,Angular和Bootstrap)的定義并描述這些庫的導(dǎo)出接口。由于TypeScript可以在任何平臺(tái)上定位JavaScript虛擬機(jī),并且不僅提供編譯器,還提供一組支持智能編碼的語言服務(wù)。

JavaScript弱勢:靜態(tài)類型檢查, 代碼重構(gòu)和語言服務(wù)......

如果程序員只需要寫兩三千行腳本,那你可能用著JavaScript還樂在其中。如果程序員需要寫個(gè)數(shù)萬行腳本,還用JavaScript恐怕要叫苦不迭了,JavaScript的缺點(diǎn)恐怕可以說上一籮筐。TypeScript在靜態(tài)類型檢查、代碼重構(gòu)和語言服務(wù)方面的優(yōu)勢十分明顯,而這些正好是JavaScript的劣勢。

面對(duì)TypeScript,堅(jiān)持JS的理由是什么?

除此之外,JavaScript在字符串,數(shù)字和日期之間的隱式轉(zhuǎn)換使得難以可視化流入和流出函數(shù)的對(duì)象類型。在團(tuán)隊(duì)開發(fā)中,對(duì)代碼進(jìn)行注釋是極其重要的,如果你剛好負(fù)責(zé)一個(gè)底層庫的開發(fā),不需要再單獨(dú)提交一份文檔進(jìn)行詳細(xì)解釋,TypeScript可以清楚記錄每一個(gè)對(duì)象的屬性,方法的參數(shù)等。JavaScript也可以做,但還是不夠,還是需要單獨(dú)寫一份文檔才夠詳細(xì)。

 TypeScript優(yōu)勢:測試開銷

說完了開發(fā)自然就是測試,對(duì)于團(tuán)隊(duì)開發(fā)而言,測試也是一筆不小的開銷,事無巨細(xì)才能在市場上有立足之地。很多程序員或許都曾想過“編寫靜態(tài)類型輸入的測試的可行性”問題,TypeScript是基于ECMAScript 6標(biāo)準(zhǔn)的實(shí)現(xiàn),它的測試可將程序作為一組模塊傳播到多個(gè)文件。TypeScript采用的這種機(jī)制是大規(guī)模開發(fā)的福音。當(dāng)以標(biāo)準(zhǔn)方式聲明模塊依賴關(guān)系時(shí),程序員可以更容易地理解這些依賴關(guān)系,工具可以使這種理解自動(dòng)化,代碼重構(gòu)風(fēng)險(xiǎn)較小。

總結(jié)一句話:對(duì)于Javascript來說,TypeScript就像未來的自己!隨著技術(shù)的發(fā)展,JavaScript終會(huì)向著TypeScript的方向看齊,包括編輯器、各類庫和API都會(huì)與TypeScript有更棒的集成,雖然現(xiàn)在已經(jīng)很棒了。

所以,你的企業(yè)也在用TypeScript嗎?如果你還在用JavaScript,你堅(jiān)持的理由是什么呢?

本文名稱:面對(duì)TypeScript,堅(jiān)持JS的理由是什么?
路徑分享:http://muchs.cn/article44/ghidhe.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站制作、面包屑導(dǎo)航、App設(shè)計(jì)品牌網(wǎng)站建設(shè)、小程序開發(fā)、商城網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

成都seo排名網(wǎng)站優(yōu)化