Những điều Bloomberg học được khi áp dụng TypeScript ở quy mô lớn
(techatbloomberg.com)- Bloomberg Terminal là sản phẩm chủ lực: có hơn 10.000 ứng dụng
→ hiển thị dữ liệu thời gian thực, tin tức, giao dịch, nhắn tin, v.v.
→ năm 2005 đã chuyển mã máy chủ Fortran/C/C++ hiện có sang JS, và từ năm 2012 phía client cũng dùng JS
→ có hơn 50 triệu dòng mã JS và hơn 2.000 nhà phát triển JS
→ ở quy mô này, chuyển từ JS sang TS là một việc lớn, và ở các doanh nghiệp lớn thì việc chuyển đổi công nghệ thường bị e ngại và diễn ra chậm
→ điều thú vị là khi bắt đầu chuyển sang TS, các kỹ sư tự chủ động tham gia và trở thành những người dẫn dắt
→ chỉ trong năm đầu tiên đã có 200 dự án chuyển đổi, và không có dự án nào quay lại
- Các nguyên tắc cốt lõi
→ Scalability: dù tiếp tục mở rộng, vẫn phải duy trì tốc độ phát triển nhanh
→ Ecosystem Coherence: mọi package phải hoạt động cùng nhau và việc nâng cấp dependency không được gây khó khăn
→ Standards Alignment: tuân thủ các tiêu chuẩn như ECMAScript và luôn sẵn sàng cho bất cứ hướng đi tiếp theo nào
- 10 bài học
-
TypeScript có thể là JavaScript + Types.
-
TS phát triển rất nhanh, vì vậy nên theo kịp compiler mới nhất.
-
Cấu hình
tsconfignhất quán có giá trị lớn. -
Việc khai báo dependency ở vị trí nào là rất quan trọng.
→ sử dụng Ambient Modules
-
Loại bỏ trùng lặp type là rất quan trọng.
-
Nên tránh các dependency kiểu ngầm định.
-
Trong file khai báo có ba chế độ export:
global,module,implicit exports
→ nếu có thể thì dùng module
-
Tính đóng gói của package có thể bị vi phạm.
-
Các khai báo được tạo tự động có thể inline type từ dependency
-
Các khai báo được sinh ra có thể bao gồm cả những dependency không bắt buộc
Chưa có bình luận nào.