2 điểm bởi ken7890 3 giờ trước | Chưa có bình luận nào. | Chia sẻ qua WhatsApp

Tiêu đề: Công bố TypeScript 7.0 RC - được viết lại bằng Go nên nhanh hơn khoảng 10 lần
Nội dung:

Microsoft đã công bố Release Candidate của TypeScript 7.0. Điểm cốt lõi là trong 1 năm qua, hãng đã port codebase hiện có từ TypeScript (codebase bootstrap được biên dịch sang JS) sang Go
Nhờ sự kết hợp giữa tốc độ mã native và xử lý song song bằng bộ nhớ chia sẻ, hiệu năng nhanh hơn khoảng 10 lần so với TypeScript 6.0
Có thể cài đặt ngay bằng npm install -D typescript@rc

Tương thích & ổn định

Đây không phải là viết lại từ đầu mà là port một cách có hệ thống từ implementation hiện có, nên logic kiểm tra kiểu về mặt cấu trúc vẫn giống 6.0
Đã được kiểm chứng bằng bộ test khổng lồ tích lũy suốt 10 năm, và hiện đã được sử dụng trên các codebase quy mô hàng triệu dòng cả trong lẫn ngoài Microsoft
Nhiều công ty như Bloomberg, Canva, Figma, Google, Linear, Notion, Slack, Vercel đã thử nghiệm các bản build tiền phát hành trong hơn 1 năm, và phần lớn đều phản hồi tích cực rằng thời gian build đã giảm đáng kể

Điều khiển song song hóa

Thực hiện parsing/type checking/emit song song. Có thể điều chỉnh số worker của type checker bằng cờ --checkers (mặc định 4), song song hóa build project reference bằng cờ --builders (hữu ích cho monorepo), và có thể buộc chế độ đơn luồng bằng --singleThreaded

Chế độ --watch được cải thiện

Đã port file-watcher của bundler Parcel sang Go, qua đó cải thiện mạnh hiệu năng theo dõi tệp đa nền tảng

Dùng song song với 6.0 (Side-by-Side)

Programmatic API ổn định dự kiến chỉ được cung cấp ở 7.1 (sau vài tháng nữa)
Gói tương thích @typescript/typescript6 cung cấp file thực thi tsc6, cho phép dùng đồng thời 6.0 và 7.0 mà không xung đột. Khuyến nghị tận dụng npm alias

Các thay đổi mặc định quan trọng / Breaking Changes

strict mặc định là true, module mặc định là esnext, stableTypeOrdering bị buộc bật
Nhiều tùy chọn đã deprecated như target: es5, downlevelIteration, moduleResolution: node/node10/classic, module: amd/umd/systemjs, baseUrl... nay chuyển thành lỗi cứng
Template literal type nay xử lý tự nhiên các điểm mã Unicode ("😀abc"["😀", "abc"])
Hỗ trợ JavaScript (dựa trên JSDoc) đã được làm lại để nhất quán hơn với cách phân tích tệp .ts

Trải nghiệm editor

Cung cấp extension TypeScript Native Preview cho VS Code, dựa trên LSP và tận dụng đa luồng. Theo đó, số lệnh language server bị lỗi đã giảm hơn 20 lần so với 6.0

Lịch trình: bản chính thức 7.0 dự kiến phát hành trong khoảng một tháng tới. Nhóm phát triển đang tích cực kêu gọi phản hồi thử nghiệm từ các dự án thực tế

Chưa có bình luận nào.

Chưa có bình luận nào.