- Giải thích về mặt lý thuyết vì sao Typia là trình xác thực runtime cho TS nhanh nhất
- Các ngôn ngữ động như JS có mọi đối tượng là
HashMap<string, Object>
- Nhờ vậy có thể thêm và xóa bất kỳ khóa nào
- Nhưng đổi lại sẽ chậm hơn so với cấu trúc lớp tĩnh
- Vì
HashMap lưu các phần tử bên trong bằng linked list
- V8 Engine có cơ chế gọi là Hidden Class Optimization
- Nếu thấy không có yếu tố nào bị điều khiển động thì sẽ không dùng
HashMap
- Thay vào đó sẽ chuyển đổi để dùng cấu trúc lớp tĩnh
- Lớp tĩnh có các member nằm liên tiếp trên bộ nhớ nên có lợi về hiệu năng
- Typia tạo mã xác thực cho từng kiểu một cách tĩnh (biên dịch AoT)
- Các runtime validator khác dùng logic động (
for key in obj)
- Đây là lý do Typia nhanh hơn các runtime validator khác
Chưa có bình luận nào.