成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

我為什么對 TypeScript 由黑轉粉?

開發(fā) 前端
一名曾僅使用 JavaScript 的開發(fā)者解釋自己為何從反對 TypeScript 到轉變?yōu)?TypeScript 粉絲。

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

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

另一方面的原因是,Chirag 難以理解 TypeScript 中像泛型這樣的高級概念。他覺得自己身處 Java 世界,每行代碼都有很強的類型化,讓人不知所措。在 Chirag 開始學習 TypeScript 時,他甚至會害怕下面這種簡單的代碼。

 

▲ TypeScript 泛型示例

 

因此,由于上述原因,雖然 Chirag 通過觀看教程或閱讀書籍來學習 TypeScript,但從未參與過任何使用 TypeScript 編寫的企業(yè)項目。

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

[[384920]]

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

不可能狀態(tài)無法恢復并進行詳盡的檢查

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

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

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

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

具有豐富的 IDE 支持并易于重構

Chirag 認為,類型相關的信息可以使 IDE 更好地發(fā)揮其用處,例如獲得代碼跳轉和自動補全等功能,IDE 會提供準確的建議。此外,在輸入代碼時會獲得即時反饋,因為編輯器會在錯誤發(fā)生時立即標記出錯誤,包括與類型相關的錯誤。這些功能可幫助開發(fā)者寫出可維護的代碼,并帶來巨大的生產力提升。

至于重構,Chirag 舉了一個例子,比如引入一個新狀態(tài)或者移除應用程序正在使用的不必要狀態(tài),如果此時忘記更新部分引用,TypeScript 編譯器就會進行警告。他還表示重構后的應用程序將以重構前的方式工作,所以不用擔心兼容方面的問題。

本文轉自OSCHINA

本文標題:我為什么對 TypeScript 由黑轉粉?

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

責任編輯:未麗燕 來源: 開源中國
相關推薦

2017-05-15 16:12:55

后端編程GUI

2023-01-10 08:17:41

WebAPI框架

2012-02-28 09:11:51

語言Lua

2020-07-17 14:06:36

Scrum敏捷團隊

2012-04-04 22:07:12

Android

2015-04-16 16:35:47

2014-01-09 09:24:40

2013-10-22 15:18:19

2015-03-02 15:13:52

Apple Watch

2012-06-18 14:51:09

Python

2014-01-17 14:39:18

12306 搶票

2014-09-22 10:06:07

2012-11-14 20:55:07

容錯服務器選型CIO

2015-06-04 11:22:22

前端程序員

2019-09-17 15:30:13

Java編程語言

2023-07-23 17:19:34

人工智能系統(tǒng)

2023-11-30 09:00:00

TypeScript開發(fā)

2022-03-14 08:33:09

TypeScriptJavaScript前端

2016-01-12 16:58:31

C游戲

2019-10-23 15:53:16

JavaScript可選鏈對象
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产一区二区在线观看视频 | 在线观看国产 | 色婷婷av久久久久久久 | 一区二区三区小视频 | 国产精品视频一区二区三区, | 色伊人网 | 午夜免费在线观看 | 草b视频 | 一区二区三区国产视频 | 日日夜夜精品视频 | 午夜寂寞影院列表 | 欧美日韩综合一区 | 91成人精品 | 久久中文高清 | 国产精品美女久久久久 | 欧美精品第三页 | 特黄特色大片免费视频观看 | 色综合99| 精品一二区 | 九九久久国产 | 亚洲大片 | 久久国产日本 | 国产精品国产成人国产三级 | 99这里只有精品视频 | 99精品视频一区二区三区 | 精产国产伦理一二三区 | 国产亚洲一级 | 免费久久久久久 | 国产激情综合五月久久 | 小早川怜子xxxxaⅴ在线 | 亚洲国产精品久久久久 | 亚洲男人的天堂网站 | 久久亚洲二区 | 久久精品亚洲国产 | 成人在线中文字幕 | 欧美日韩国产一区二区 | 在线免费小视频 | 国产成人免费一区二区60岁 | 欧美精品福利 | 天天操网 | 久久aⅴ乱码一区二区三区 亚洲国产成人精品久久久国产成人一区 |