🎋 竹子日誌

一定要用 TypeScript 嗎?

過去其實出過不少 JavaScript 的超集,包含 Coffee Script 、Flow ⋯⋯等等。近年真的是 TypeScript 獨霸市場,幾乎快要成為前端一致認可的標準,成熟的 Library 幾乎會與 TypeScript 綁在一起。

然而,我也依然會聽到這樣的聲音:

  • TypeScript 的開發成本過高,不適合快節奏的公司導入。
  • TypeScript 編譯需要比較多的時間,對 CI/CD 很沒效率。
  • 公司專案很老舊,不適合再導入。

這些問題我「認同」,但也覺得不是問題:

  • 覺得定義型別成本高,可以寫 Any。
  • 覺得編譯成本高,其實可以做部分預編譯。
  • 公司專案還在 JavaScript 可以用 JSDoc 漸進導入。

但必須說,沒有使用 TypeScript 時,稍微大一點的專案真的很痛苦。

  • 可能一不小心就操作到 undefined 。
  • 無意識會做大量動態操作。
  • 當參數穿越多個元件,難以預期是什麼東西。
  • 沒有文件時,理解難度上升。
  • AI 工具更難預期上下文。

曾經有一位大神這麼說過:「當你團隊超過三人協作,而且是長期維護的產品,卻不打算導入 TypeScript ,這是對你的專案不重視」

這話是比較過激,但某種意義上卻代表著

留言