Tôi đang cố gắng tìm hiểu bối cảnh của các cách tiếp cận khác nhau và các thực tiễn tốt nhất, xung quanh việc phát triển JavaScript phía máy khách phức tạp.
Tôi không chắc chắn nên dán nhãn lớp ứng dụng này, có lẽ là AJAX hoặc RIA nặng (nhưng không phải là plugin như Flash / Silverlight). Tôi đang đề cập đến các ứng dụng web có các đặc điểm sau:
- Giả lập UX máy tính để bàn phong phú / bản địa trong JavaScript
- Chứa hầu hết / tất cả các hành vi trong JS phía máy khách, sử dụng máy chủ làm API dữ liệu (JSON / Html-Mẫu).
Điều này trái ngược với việc sử dụng máy chủ web để kết xuất giao diện người dùng, tạo ra tất cả HTML trong mô hình làm mới trang.
Một số ví dụ:
- Google Docs / Gmail
- Tâm trí
- Theo dõi quan trọng
Khi chúng ta tiến lên HTML5, tôi có thể thấy phong cách phát triển RIA này, với JavaScript nặng nề, trở nên phổ biến hơn và cần thiết hơn để cạnh tranh.
HỎI: Vậy các cách tiếp cận phổ biến đang nổi lên xung quanh việc quản lý các loại phát triển JS nặng nề này là gì?
Mã phía máy khách, khi một ứng dụng phát triển các tính năng, rất phức tạp. Có những vấn đề mở rộng nỗ lực phát triển trên nhiều nhóm với JS thô (hoặc tôi nghe được và có thể tin điều đó).
Google đã tiếp cận vấn đề bằng cách xây dựng GWT biên dịch từ ngôn ngữ cấp cao hơn (Java) sang JS, dựa trên cơ sở hạ tầng phát triển hiện có mà ngôn ngữ cấp cao hơn có (Eclipse, gõ mạnh, công cụ tái cấu trúc), cùng với khả năng tương thích trình duyệt và các vấn đề khác từ nhà phát triển.
Có những công cụ khác, như Script # cho C # làm điều gì đó tương tự. Tất cả điều này đặt JS nhiều hơn trong vai trò của IL (Ngôn ngữ trung gian). I E. "Bạn không bao giờ thực sự viết bằng 'ngôn ngữ cấp thấp' đó nữa."
Nhưng 'biên dịch thành JS' này không phải là cách tiếp cận duy nhất. Không rõ ràng rằng GWT là phương pháp chi phối ... hoặc thực sự sẽ trở thành nó.
Mọi người đang làm gì với JavaScript khách hàng phong phú? Một số câu hỏi định hướng:
- Có phải hầu hết các cửa hàng đều tạo ra thủ công JS (trên đỉnh các lib như jQuery et al) không?
- Hoặc có nhiều cách tiếp cận khác nhau, không có thực tiễn tốt nhất rõ ràng đang nổi lên?
- Có phải hầu hết các cửa hàng tránh phát triển quy mô RIA để ủng hộ mô hình vẽ lại phía máy chủ / trang đơn giản hơn cho nhà phát triển? Nếu vậy, điều này sẽ kéo dài?
- Việc biên dịch sang JS có lẽ là một xu hướng mới nổi trong tương lai? Hay đây chỉ là đầu sai?
- Làm thế nào để họ quản lý sự phức tạp và tái cấu trúc của máy khách JS?
- Modularization và phân phối công việc giữa các đội?
- Ứng dụng, thực thi và thử nghiệm các mẫu phía máy khách như MVC / MVP, v.v.
Vậy, những xu hướng mới nổi trong tương lai JavaScript và HTML5 nặng nề này của chúng ta là gì?
Cảm ơn!