Sự khác biệt giữa AWT và Swing

Mục lục:

Sự khác biệt giữa AWT và Swing
Sự khác biệt giữa AWT và Swing

Video: Sự khác biệt giữa AWT và Swing

Video: Sự khác biệt giữa AWT và Swing
Video: Bài 1: Giới thiệu về AWT, Swing và Container trong Java 2024, Tháng bảy
Anonim

Sự khác biệt chính - AWT vs Swing

Java là ngôn ngữ lập trình cấp cao được phát triển bởi Sun Microsystems. Java hỗ trợ Lập trình hướng đối tượng giúp thiết kế và phát triển một phần mềm sử dụng các đối tượng. Khi chương trình Java được biên dịch, nó được chuyển đổi thành một mã bytecode. Bytecode đó được Máy ảo Java (JVM) thông dịch trên mọi nền tảng, do đó, nó là ngôn ngữ lập trình mà các lập trình viên có thể viết một lần và chạy trên mọi nền tảng. Java có thể được sử dụng để phát triển nhiều loại ứng dụng như ứng dụng máy tính để bàn, di động và web. Ngôn ngữ này cung cấp các bộ công cụ để tạo Giao diện Người dùng Đồ họa (GUI) phong phú. Hai trong số đó là AWT và Swing. Bài viết này thảo luận về sự khác biệt giữa AWT và Swing. Sự khác biệt chính giữa AWT và Swing là AWT là bộ công cụ tiện ích mở rộng cửa sổ, đồ họa và giao diện người dùng phụ thuộc vào nền tảng gốc của Java trong khi Swing là bộ công cụ tiện ích GUI dành cho Java, là tiện ích mở rộng cho AWT.

AWT là gì?

Một Giao diện Người dùng Đồ họa là một giao diện để người dùng cung cấp các hướng dẫn cho phần mềm để thực hiện các tác vụ. Nó bao gồm các thành phần đồ họa khác nhau. Một số thành phần GUI là cửa sổ, nút, hộp tổ hợp, vùng văn bản, hộp danh sách và nhãn. Sử dụng các thành phần này, lập trình viên có thể phát triển giao diện người dùng tương tác cho ứng dụng. GUI dựa trên các sự kiện. Nhấp vào nút, đóng cửa sổ, nhập nội dung gì đó vào hộp văn bản là một số ví dụ về các sự kiện có thể xảy ra trong ứng dụng dựa trên Giao diện Người dùng Đồ họa. Ngày nay nhiều ứng dụng chứa GUI. Các ứng dụng di động, Hệ thống đặt vé máy bay, Máy giao dịch viên tự động có giao diện đồ họa phong phú để khách hàng sử dụng ứng dụng dễ dàng.

AWT là viết tắt của Bộ công cụ Cửa sổ Tóm tắt. AWT yêu cầu một đối tượng OS gốc để triển khai các chức năng. Do đó, các thành phần AWT có trọng lượng nặng và yêu cầu nhiều không gian bộ nhớ hơn. Các thành phần AWT cũng cần thời gian để thực thi. Số lượng thành phần có sẵn trong AWT là tối thiểu. Cần nhập gói javax.awt để phát triển ứng dụng GUI dựa trên AWT.

Sự khác biệt giữa AWT và Swing
Sự khác biệt giữa AWT và Swing
Sự khác biệt giữa AWT và Swing
Sự khác biệt giữa AWT và Swing

Hình 01: AWT và Swing

Một số thành phần AWT là nút, trường văn bản, hộp thả xuống, thanh cuộn, cửa sổ, khung, bảng điều khiển, nhãn. Sau khi tạo các đối tượng, chúng có thể được đặt vào một thùng chứa. Một thùng chứa cung cấp không gian cho các thành phần để tải. AWT không hỗ trợ giao diện có thể cắm được. Do đó, một ứng dụng AWT được phát triển trong một hệ điều hành có thể không giống với một hệ điều hành khác.

Swing là gì?

Swing là một bộ công cụ tiện ích GUI cho Java. Nó là một phần của Oracle’s Java Foundation Classes (JFC). Nó là một giao diện lập trình ứng dụng để xây dựng GUI cho các ứng dụng Java. Nó được xây dựng trên AWT API. Swing được phát triển để cung cấp các thành phần linh hoạt và phức tạp hơn AWT. Swing chứa các thành phần cơ bản như nhãn, hộp văn bản, nút. Nó cũng chứa các thành phần cao cấp hơn. Một số trong số đó là cây, bảng, danh sách, ngăn cuộn và ngăn theo thẻ. Nếu lập trình viên cần triển khai ứng dụng Swing, thì cần phải nhập gói javax.swing. Gói này cung cấp các lớp cho Java Swing API như JButton, JRadioButton, JTextField, JCheckbox, v.v.

Thành phần Swing không có mã dành riêng cho nền tảng. Do đó, Swing độc lập với nền tảng. Không giống như AWT, Swing không yêu cầu các lệnh gọi OS gốc để xây dựng các thành phần. JVM chịu trách nhiệm gọi các phương thức gốc. Các thành phần Swing có trọng lượng nhẹ. Không gian bộ nhớ cần thiết cũng là tối thiểu. Đây là một yếu tố đáng kể để chạy các ứng dụng dựa trên Swing nhanh hơn. Trong phát triển ứng dụng, Model, View, Controller (MVC) là một mẫu thiết kế phổ biến. Mô hình đại diện cho dữ liệu. Chế độ xem đại diện cho bản trình bày trong khi Bộ điều khiển là giao diện giữa Mô hình và Chế độ xem. Swing theo mô hình này. Swing hỗ trợ giao diện có thể cắm được. Nhìn chung, nó mạnh hơn AWT.

Điểm giống nhau giữa AWT và Swing là gì?

Cả hai đều là bộ công cụ dựa trên Java để xây dựng Giao diện Người dùng Đồ họa

Sự khác biệt giữa AWT và Swing là gì?

AWT vs Swing

AWT là bộ công cụ tiện ích cửa sổ, đồ họa và giao diện người dùng phụ thuộc vào nền tảng gốc của Java trước Swing. Swing là bộ công cụ tiện ích GUI dành cho Java, là một phần của Lớp Nền tảng Java của Oracle (JFC).
Sự phụ thuộc vào nền tảng
Các thành phần AWT phụ thuộc vào nền tảng. Các thành phần xích đu độc lập với nền tảng.
Số thành phần
AWT chứa ít thành phần hơn. Swing có số lượng thành phần nhiều hơn.
Thành phần
Các thành phầnAWT rất nặng. Các thành phầnSwing rất nhẹ.
MVC
AWT không tuân theo MVC. Swing theo MVC.
Tốc độ
AWT không nhanh bằng Swing. Swing nhanh hơn AWT.
Dung lượng Bộ nhớ Yêu cầu
Các thành phần AWT yêu cầu nhiều dung lượng bộ nhớ hơn. Các thành phần xoay cần ít dung lượng bộ nhớ hơn.
Gói bắt buộc
AWT yêu cầu nhập gói javax.awt. Swing yêu cầu nhập gói javax.swing.
Nhìn và cảm nhận dễ chịu
AWT không hỗ trợ giao diện có thể cắm được. Swing mang lại giao diện có thể cắm được.

Tóm tắt - AWT vs Swing

Bài viết này đã thảo luận về hai công cụ Thiết kế Giao diện Người dùng Đồ họa là AWT và Swing. Sự khác biệt giữa AWT và Swing là AWT là bộ công cụ tiện ích cửa sổ, đồ họa và giao diện người dùng phụ thuộc vào nền tảng gốc của Java trong khi Swing là bộ công cụ tiện ích GUI cho Java, là một phần mở rộng cho AWT. Swing cung cấp các chức năng phong phú hơn so với AWT. Giao diện của GUI được xây dựng bằng Swing trông đẹp hơn GUI với AWT. Không giống như AWT, Swing hỗ trợ giao diện có thể cắm được và tăng khả năng sử dụng của ứng dụng.

Tải xuống phiên bản PDF của AWT vs Swing

Bạn có thể tải xuống phiên bản PDF của bài viết này và sử dụng nó cho các mục đích ngoại tuyến theo ghi chú trích dẫn. Vui lòng tải xuống phiên bản PDF tại đây: Sự khác biệt giữa AWT và Swing

Đề xuất: