Lựa chọn công nghệ front-end trong trường hợp hệ thống quản lý doanh nghiệp lớn và chính phủ phải tương thích với IE8
Ngày cập nhật: 25/05/2019 | Số lần đọc: 9449 | Số từ: 503 | Phân loại: Front-end
Một cách khách quan mà nói, tôi cho rằng việc các tổ chức chính phủ và doanh nghiệp lớn buộc phải hỗ trợ trình duyệt IE8 là một lựa chọn không thể tránh khỏi. Lý do là vì hiện nay các trình duyệt phổ biến như Chrome, Cốc Cốc, QQ Browser… đều có khả năng tự động gửi dữ liệu lịch sử truy cập của người dùng lên máy chủ. Chưa kể, nhiều khả năng chúng còn thu thập thêm những thông tin cá nhân khác. Điều này rõ ràng không được chấp nhận trong môi trường làm việc chuyên nghiệp, đặc biệt là ở cấp độ chính phủ hay các doanh nghiệp lớn.
Vì vậy, việc sử dụng trình duyệt mặc định trên Windows – Internet Explorer – trở thành sự lựa chọn duy nhất hợp lý. Hơn nữa, trong môi trường nội bộ doanh nghiệp, việc cài đặt phần mềm mới thường bị hạn chế, nên mong muốn chỉ dùng Chrome là điều gần như bất khả thi.
Hôm qua khi đến gặp khách hàng, tôi thấy đa số họ vẫn đang dùng IE8 hoặc IE9 trên nền tảng Windows 7, chỉ có một vài thiết bị chạy Windows 10. Không có bất kỳ trình duyệt nào khác tồn tại. Vì thế, dự án bắt buộc phải cân nhắc kỹ lưỡng về lựa chọn công nghệ front-end phù hợp.
Hiện tại, các framework phổ biến như Vue.js hay React.js hoàn toàn không hỗ trợ IE9 trở xuống. Do đó, chúng ta cần tìm kiếm một giải pháp thay thế.
Framework knockout-js
Trang web chính thức:
- Hỗ trợ từ IE6 trở lên
- Được bảo trì lâu dài, hiện vẫn còn khá sôi động và đáng tin cậy
San - Framework JS của Baidu
Trang web chính thức:
- Là một framework giống Vue.js, do chính Baidu phát triển. Hỗ trợ từ IE6.
- Tuy nhiên, vẫn còn nhiều nghi ngờ về năng lực kỹ thuật của Baidu cũng như rủi ro tiềm ẩn khi sử dụng sản phẩm của họ.
avalon
Không khuyến khích sử dụng
- Là framework Việt Nam (hoặc Á Đông), đã ngừng cập nhật từ hai năm trước.
- Tài liệu hướng dẫn rất tệ, khó theo dõi và thiếu tính chuyên nghiệp.
- Cộng đồng ủng hộ quá nhiệt tình trên Zhihu khiến tôi cảm thấy ai dùng nó thì chắc chắn chưa hiểu rõ bản chất.
ExtJS
Không khuyến khích sử dụng
- Chi phí học hỏi và khắc phục lỗi cao
- Bản quyền trả phí
- Cộng đồng gần như đã “tắt thở”
ExtJS 5 hỗ trợ IE8, rất phù hợp để xây dựng giao diện dạng bảng dữ liệu:
So sánh ưu điểm giữa ExtJS và Dojo:
Tuy nhiên, ExtJS là một framework trả phí.
Bootflat
Dựa trên Bootstrap 3.3.0
Trang tài liệu:
Bootstrap 2
Phiên bản cũ nhưng vẫn hữu ích:
Các cải tiến cho IE8:
Mẫu giao diện backend dựa trên LayUI
GitHub:
Tôi đã kiểm tra mẫu này bằng chế độ tương thích của IE8, kết quả khá ấn tượng.
Thông tin chi tiết về LayUI:
MinCSS hỗ trợ IE5.5
MinCSS là một framework CSS nhẹ nhàng, hỗ trợ cả IE5.5:
Máy ảo IE8 cho Windows
Bạn có thể tải máy ảo IE8 từ đường link sau:
Kết luận
- Sử dụng jQuery có lẽ là phương án an toàn và hiệu quả nhất trong điều kiện hiện tại.
- Trong trường hợp ứng dụng yêu cầu tương tác phức tạp hơn, có thể xem xét tích hợp knockout-js.