日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
我為什么對(duì)TypeScript由黑轉(zhuǎn)粉?

一名曾僅使用 JavaScript 的開(kāi)發(fā)者解釋自己為何從反對(duì) TypeScript 到轉(zhuǎn)變?yōu)?TypeScript 粉絲。

創(chuàng)新互聯(lián)主要從事成都做網(wǎng)站、成都網(wǎng)站建設(shè)、網(wǎng)頁(yè)設(shè)計(jì)、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)相城,十余年網(wǎng)站建設(shè)經(jīng)驗(yàn),價(jià)格優(yōu)惠、服務(wù)專業(yè),歡迎來(lái)電咨詢建站服務(wù):13518219792

Chirag Swadia 自稱曾是 Anti-TypeScript 的 JavaScript 開(kāi)發(fā)者。談及反對(duì)的原因,他以前一直認(rèn)為給函數(shù)/變量添加類型以滿足 TypeScript 編譯器的要求屬于過(guò)度工程化 (Over-Engineering) 的設(shè)計(jì)。因?yàn)檫@并沒(méi)有提供任何有意義的便利之處,而且降低了開(kāi)發(fā)效率——Chirag 表示自己最初總會(huì)遇到一些難以理解的編譯錯(cuò)誤,需要花費(fèi)時(shí)間來(lái)處理。他也因此感受到了挫敗感,并開(kāi)始討厭 TypeScript。

另一方面的原因是,Chirag 難以理解 TypeScript 中像泛型這樣的高級(jí)概念。他覺(jué)得自己身處 Java 世界,每行代碼都有很強(qiáng)的類型化,讓人不知所措。在 Chirag 開(kāi)始學(xué)習(xí) TypeScript 時(shí),他甚至?xí)ε孪旅孢@種簡(jiǎn)單的代碼。

 

▲ TypeScript 泛型示例

 

因此,由于上述原因,雖然 Chirag 通過(guò)觀看教程或閱讀書籍來(lái)學(xué)習(xí) TypeScript,但從未參與過(guò)任何使用 TypeScript 編寫的企業(yè)項(xiàng)目。

變化出現(xiàn)在 Chirag 擔(dān)任新職務(wù)之后,此時(shí)項(xiàng)目的技術(shù)棧為 TypeScript,他所負(fù)責(zé)的應(yīng)用都是 TypeScript 編寫(只有遺留下來(lái)的代碼是 JavaScript 代碼),因此他不得不寫起了 TypeScript 代碼。正如 Chirag 所預(yù)料的那樣,起初這對(duì)于他來(lái)說(shuō)是一個(gè)巨大的挑戰(zhàn),他對(duì) TypeScript 的恨意也因此越來(lái)越大,但最終在幾個(gè)月后,他發(fā)現(xiàn)了 TypeScript 的好處以及其他人喜歡 TypeScript 而不是 JavaScript 的原因。

[[384920]]

Chirag 也列出了自己成為 TypeScript 粉絲的三大理由。

不可能狀態(tài)無(wú)法恢復(fù)并進(jìn)行詳盡的檢查

Chirag 表示這是他喜歡 TypeScript 的主要原因。他引用了在 React 應(yīng)用中利用 TypeScript 來(lái)避免不可能狀態(tài)的例子,此例子描述了交通信號(hào)燈系統(tǒng)處理不可能狀態(tài)的案例(點(diǎn)此查看)。

可盡早發(fā)現(xiàn)錯(cuò)誤

Chirag 表示在使用 JavaScript 時(shí),曾遇到過(guò)多次由于在前端沒(méi)有進(jìn)行類型檢查而在生產(chǎn)環(huán)境發(fā)現(xiàn) bug 的情況。這些 bug 本可以避免,并且可以在編譯時(shí)被 TypeScript 編譯器發(fā)現(xiàn),這樣可以節(jié)省研發(fā)和 QA 的工作周期。

他認(rèn)為使用 TypeScript 可以將一切都保持為最初定義的狀態(tài),如果將變量聲明為布爾型,則它將始終是布爾型,并且不會(huì)變成數(shù)字。這提升了代碼按照最初預(yù)期方式運(yùn)行的可能性。簡(jiǎn)而言之,代碼是可預(yù)測(cè)的。

具有豐富的 IDE 支持并易于重構(gòu)

Chirag 認(rèn)為,類型相關(guān)的信息可以使 IDE 更好地發(fā)揮其用處,例如獲得代碼跳轉(zhuǎn)和自動(dòng)補(bǔ)全等功能,IDE 會(huì)提供準(zhǔn)確的建議。此外,在輸入代碼時(shí)會(huì)獲得即時(shí)反饋,因?yàn)榫庉嬈鲿?huì)在錯(cuò)誤發(fā)生時(shí)立即標(biāo)記出錯(cuò)誤,包括與類型相關(guān)的錯(cuò)誤。這些功能可幫助開(kāi)發(fā)者寫出可維護(hù)的代碼,并帶來(lái)巨大的生產(chǎn)力提升。

至于重構(gòu),Chirag 舉了一個(gè)例子,比如引入一個(gè)新?tīng)顟B(tài)或者移除應(yīng)用程序正在使用的不必要狀態(tài),如果此時(shí)忘記更新部分引用,TypeScript 編譯器就會(huì)進(jìn)行警告。他還表示重構(gòu)后的應(yīng)用程序?qū)⒁灾貥?gòu)前的方式工作,所以不用擔(dān)心兼容方面的問(wèn)題。

本文轉(zhuǎn)自O(shè)SCHINA

本文標(biāo)題:我為什么對(duì) TypeScript 由黑轉(zhuǎn)粉?

本文地址:https://www.oschina.net/news/131695/anti-ts-developer-became-a-ts-fan


分享名稱:我為什么對(duì)TypeScript由黑轉(zhuǎn)粉?
網(wǎng)站路徑:http://www.5511xx.com/article/dhhsphd.html