玩 TypeHero 上手 TypeScript
讀過 TypeScript 文件的人大概不覺得有趣,個人就曾經為了承接 1 項公司專案而 k 了 TypeScript 的文件,不過讀完卻還是有種不知道怎麼上手的感覺,而且該專案雖使用 TypeScript, 但是絕大多數型別都標為 any
⋯⋯(同事真的不要當成這樣),對於 TypeScript 到底怎麼使用,我就更苦惱了。
這原因大概在於 TypeScript 是 JavaScript 的超集合(superset), 很多功能/語法都還是與 JavaScript 相容,因此 TypeScript 的文件多在強調怎麼定義型別、使用型別以及編譯成 JavaScript, 所以讀 TypeScript 官方文件真的很不像在學習程式語言⋯⋯。
後來真正學會運用 TypeScript 的過程,是實際使用 TypeScript 寫 1 個 Chrome Extension 並上架到 Chrome Web Store, 才抓到寫 TypeScript 的感覺。( Chrome Extension BasiText 就是用 TypeScript 開發的)
但如果 TypeScript 官網可以像 TypeHero 把重點部分設計成關卡的形式,相信可以加快新進入者上手的速度!
TypeHero 是由社群所開發的開源專案(也有網站可以直接使用,不用架設),提供各種開發者可以學習 TypeScript 的關卡,有點像解 LeetCode, 它會給你 1 段 TypeScript 程式,讓你為這段程式標上型別或者修正型別上的錯誤,並且修好之後可以按 Submit 檢查是否通過關卡,蠻好玩的!
不過建議還是要稍微看過 TypeScript 官方文件,先了解怎麼標上型別之類的語法再來玩會比較好!