Ext.js - Tổng quan
Ext JS là một khung JavaScript phổ biến cung cấp giao diện người dùng phong phú để xây dựng các ứng dụng web với chức năng trình duyệt chéo. Ext JS về cơ bản được sử dụng để tạo các ứng dụng máy tính để bàn. Nó hỗ trợ tất cả các trình duyệt hiện đại như IE6 +, FF, Chrome, Safari 6+, Opera 12+, ... Trong khi một sản phẩm khác của Sencha, Sencha Touch được sử dụng cho các ứng dụng di động.
Ext JS dựa trên kiến trúc MVC / MVVM. Phiên bản mới nhất của Ext JS 6 là một nền tảng duy nhất, có thể được sử dụng cho cả máy tính để bàn và ứng dụng di động mà không cần có mã khác nhau cho nền tảng khác nhau.
Lịch sử
Ext JS 1.1
Phiên bản đầu tiên của Ext JS được phát triển bởi Jack Slocum vào năm 2006. Nó là một tập hợp các lớp tiện ích, là một phần mở rộng của YUI. Ông đặt tên thư viện là YUI-ext.
Ext JS 2.0
Ext JS phiên bản 2.0 được phát hành vào năm 2007. Phiên bản này có tài liệu API mới cho ứng dụng máy tính để bàn với các tính năng hạn chế. Phiên bản này không có khả năng tương thích ngược với phiên bản Ext JS trước.
Ext JS 3.0
Ext JS phiên bản 3.0 được phát hành vào năm 2009. Phiên bản này đã bổ sung các tính năng mới như xem biểu đồ và danh sách nhưng phải trả giá bằng tốc độ. Nó có khả năng tương thích ngược với phiên bản 2.0.
Ext JS 4.0
Sau khi phát hành Ext JS 3, các nhà phát triển của Ext JS gặp thách thức lớn là tăng tốc độ. Phiên bản Ext JS 4.0 được phát hành vào năm 2011. Nó có cấu trúc được sửa đổi hoàn chỉnh, theo sau là kiến trúc MVC và một ứng dụng nhanh.
Ext JS 5.0
Ext JS phiên bản 5.0 được phát hành vào năm 2014. Thay đổi lớn trong bản phát hành này là thay đổi kiến trúc MVC thành kiến trúc MVVM. Nó bao gồm khả năng xây dựng ứng dụng máy tính để bàn trên các thiết bị hỗ trợ cảm ứng, liên kết dữ liệu hai chiều, bố cục đáp ứng và nhiều tính năng khác.
Ext JS 6.0
Ext JS 6 hợp nhất khung Ext JS (cho ứng dụng máy tính để bàn) và Sencha Touch (cho ứng dụng di động).
Đặc trưng
Sau đây là các tính năng nổi bật của Ext JS.
Các tiện ích giao diện người dùng có thể tùy chỉnh với bộ sưu tập giao diện người dùng phong phú như lưới, lưới trục, biểu mẫu, biểu đồ, cây.
Khả năng tương thích mã của phiên bản mới với phiên bản cũ hơn.
Trình quản lý bố cục linh hoạt giúp tổ chức hiển thị dữ liệu và nội dung trên nhiều trình duyệt, thiết bị và kích thước màn hình.
Gói dữ liệu nâng cao tách các tiện ích giao diện người dùng khỏi lớp dữ liệu. Gói dữ liệu cho phép thu thập dữ liệu phía máy khách bằng cách sử dụng các mô hình chức năng cao cho phép các tính năng như sắp xếp và lọc.
Nó là giao thức bất khả tri và có thể truy cập dữ liệu từ bất kỳ nguồn back-end nào.
Các chủ đề có thể tùy chỉnh Các tiện ích Ext JS có sẵn trong nhiều chủ đề có sẵn phù hợp trên các nền tảng.
Những lợi ích
Sencha Ext JS là tiêu chuẩn hàng đầu để phát triển ứng dụng web cấp doanh nghiệp. Ext JS cung cấp các công cụ cần thiết để xây dựng các ứng dụng mạnh mẽ cho máy tính để bàn và máy tính bảng.
Hợp lý hóa việc phát triển đa nền tảng trên máy tính để bàn, máy tính bảng và điện thoại thông minh - cho cả trình duyệt hiện đại và cũ.
Tăng năng suất của các nhóm phát triển bằng cách tích hợp vào môi trường phát triển doanh nghiệp thông qua các plugin IDE.
Giảm chi phí phát triển ứng dụng web.
Trao quyền cho các nhóm tạo ứng dụng với trải nghiệm người dùng hấp dẫn.
Cung cấp một bộ tiện ích con để dễ dàng tạo giao diện người dùng mạnh mẽ.
Tuân theo kiến trúc MVC, do đó mã rất dễ đọc.
Hạn chế
Kích thước của thư viện lớn, khoảng 500 KB, khiến thời gian tải ban đầu nhiều hơn và làm cho ứng dụng chậm.
HTML chứa đầy các thẻ làm cho nó phức tạp và khó gỡ lỗi.
Theo chính sách cấp phép công cộng chung, nó miễn phí cho các ứng dụng nguồn mở nhưng trả phí cho các ứng dụng thương mại.
Đôi khi để tải ngay cả những thứ đơn giản cũng cần vài dòng mã hóa, điều này đơn giản hơn trong html hoặc JQuery thuần túy.
Cần nhà phát triển khá kinh nghiệm để phát triển các ứng dụng Ext JS.
Công cụ
Sau đây là các công cụ do Sencha cung cấp được sử dụng để phát triển ứng dụng Ext JS chủ yếu ở cấp độ sản xuất.
Sencha CMD
Sencha CMD là một công cụ cung cấp các tính năng rút gọn mã Ext JS, dàn giáo và tạo bản dựng sản xuất.
Sencha IDE Plugins
Các plugin Sencha IDE tích hợp các khung Sencha vào IntelliJ, WebStorm IDE, giúp cải thiện năng suất của nhà phát triển bằng cách cung cấp các tính năng như hoàn thành mã, kiểm tra mã, điều hướng mã, tạo mã, tái cấu trúc mã, tạo mẫu, kiểm tra chính tả, v.v.
Thanh tra Sencha
Sencha Inspector là một công cụ gỡ lỗi giúp trình gỡ lỗi gỡ lỗi bất kỳ vấn đề nào trong khi phát triển.