微軟宣布將 TypeScript 性能提高 10 倍
感謝本站網友 有鯽雪狐 的線索投遞!
本站 3 月 11 日消息,微軟官方開發者博客今日發文,宣布將徹底提高 TypeScript 的性能。
微軟博客稱,TypeScript 的核心價值主張是卓越的開發者體驗。隨著用戶的代碼庫增長,TypeScript 本身的價值也在增長,但在許多情況下,TypeScript 還沒有能夠擴展到非常大的代碼庫。在大項目中工作的開發者可能會遇到長時間的加載和檢查時間,開發者必須在合理的編輯器啟動時間或完整查看源代碼之間做出選擇。
為了實現性能提速目標,微軟已經開始著手進行 TypeScript 編譯器和工具的本地化移植。本地化實現將大幅提高編輯器啟動速度,將大多數構建時間縮短 10 倍,并顯著降低內存使用。
通過移植當前代碼庫,微軟預計到 2025 年中期能夠預覽支持命令行類型檢查的本地化實現tsc
,并在年底前提供功能完整的解決方案,包括項目構建和語言服務。
用戶可以從微軟新的工作倉庫構建和運行 Go 代碼,該倉庫的許可證與現有的 TypeScript 代碼庫相同。
微軟官方測試顯示,本地實現已經能夠加載許多流行的 TypeScript 項目,包括 TypeScript 編譯器本身。以下是在 GitHub 上一些不同大小的流行代碼庫上運行tsc
的時間:
此外,大多數開發者的時間都花在了代碼編輯器中,因此該項性能最為重要。微軟希望編輯器能夠快速加載大型項目,并在所有情況下快速響應。憑借本地實現,微軟將能夠提供極快的編輯器體驗。
以 Visual Studio Code 代碼庫為基準,在快速計算機上,當前在編輯器中加載整個項目所需的時間約為 9.6 秒。使用本地語言服務后,時間降至約 1.2 秒,在編輯器場景中項目加載速度提高了 8 倍。這意味著從用戶打開編輯器到在 TypeScript 代碼庫中按下第一個鍵之間的工作體驗將更快。微軟預計所有項目都將看到這種級別的加載時間改進。
優化后的 TypeScript 總體內存使用量似乎也大約是當前實現的一半,并預期將實現進一步的改進。所有語言服務操作(包括完成列表、快速信息、轉到定義和查找所有引用)的編輯器響應速度也將顯著提升。微軟還將轉向語言服務器協議(LSP),這是一個長期的基礎設施工作項,旨在更好地使微軟的實現與其他語言對齊。
本站從微軟博客獲悉,最新的 TypeScript 版本是 TypeScript 5.8,TypeScript 5.9 即將推出。基于 JS 的代碼庫將繼續開發到 6.x 系列,TypeScript 6.0 將引入一些棄用和破壞性更改,以適應即將到來的原生代碼庫。
當原生代碼庫與當前 TypeScript 達到足夠兼容性時,微軟會將其發布為 TypeScript 7.0。為了清晰起見,微軟將簡單地稱它們為 TypeScript 6(JS)和 TypeScript 7(native),這將是微軟未來一段時間內的命名方式。
還沒有評論,來說兩句吧...