Mục lục

TypeScript Design System Roadmap

Leveraging the power of TypeScript to build type-safe, maintainable, and scalable design systems.

TypeScript không chỉ là "JS có thêm type". Để trở thành Senior/Architect, bạn cần hiểu triết lý của Type System và cách thiết kế các hệ thống loại trừ lỗi ngay từ thời điểm biên dịch.

Module 1: Triết lý Type System

  • Structural vs Nominal Typing: Tại sao TS chấp nhận hai object khác class nhưng cùng shape? So sánh với Java, C#.
  • Type Soundness & Completeness: Tại sao TS cho phép any và triết lý đằng sau sự linh hoạt này.
  • Type Inference Engine: Cách TS đoán kiểu dữ liệu và giới hạn của nó.

Module 2: Advanced Meta-programming

  • Mapped & Template Literal Types: Tạo ra hàng nghìn type từ một object gốc duy nhất (Design Tokens).
  • Conditional Types & Infer: Kỹ thuật lập trình với type để xử lý các logic phức tạp trong thư viện UI.
  • Utility Types từ con số 0: Tự viết lại Pick, Omit, Exclude để hiểu sâu bản chất.

Module 3: Architecture & Design System

  • Polymorphic Components: Thiết kế component có thể thay đổi HTML tag nhưng vẫn giữ nguyên Type Safety.
  • Discriminated Unions: Quản lý State phức tạp mà không bao giờ gặp lỗi "undefined".
  • Brands & Opaque Types: Kỹ thuật ngăn chặn việc truyền nhầm dữ liệu (vd: ID người dùng vs ID sản phẩm).

Module 4: Engineering Excellence

  • Compiler Options Deep Dive: Hiểu từng dòng trong tsconfig.json và tác động đến bundle size.
  • Module Augmentation: Kỹ thuật mở rộng thư viện của bên thứ ba mà không cần sửa code gốc.
  • Performance Profiling for Types: Cách tối ưu khi compiler chạy chậm trong các dự án hàng triệu dòng code.
Quảng cáo
mdhorizontal