Java applet được sử dụng để cung cấp các tính năng tương tác cho các ứng dụng Web và có thể được thực thi bởi các trình duyệt cho nhiều nền tảng. Đây là các chương trình Java di động, được nhúng trong các trang HTML và có thể chạy tự động khi các trang được xem.
Nội dung
Những thông tin cơ bản về Applet
Applet là gì?
Đây chính là một trong những ứng dụng mạng nổi tiếng của Java, được xây dựng bởi ngôn ngữ lập trình Java hay ngôn ngữ lập trình khác, sau đó được biên dịch sang mã bytecode của Java.
Nhờ sở hữu những kỹ năng linh hoạt trên đa nền tảng mà Applet có thể sử dụng trên nhiều hệ điều hành khác nhau: Microsoft Windows, Linux, MacOS, Unix… Tất cả các applet đều là lớp con của lớp Applet, hoặc cũng có thể là một ứng dụng đầy đủ tính năng vì nó có toàn bộ Java API.
Đặc điểm của Applet
– Applet chạy trong trình duyệt Web hoặc trình xem Applet chứ không phải chương trình độc lập. Công cụ Applet tiêu chuẩn được cung cấp bởi JDK
– Việc thực thi một applet không được System.out.println () thực hiện. Mà thay bằng các phương thức AWT khác nhau.
– Tương tự như cửa sổ chương trình nhỏ giống như Frame nhưng có thể chạy trên trình duyệt Website.
– Có thể xuất hiện tùy thuộc vào các tham số được thông qua các trang mã hóa bằng HTML
Vòng đời của Java Applet
Vòng đời được hình thành từ 5 sự kiện chính: init, start, stop, destroy và paint. Các sự kiện này sẽ được các trình duyệt gọi ra để thực thi và bắt đầu hoạt động:
init | Cho phép khởi tạo bất cứ điều gì cần thiết đối với applet. Trong suốt thời gian chạy ứng dụng thì sự kiện này chỉ chạy một lần và được trình duyệt gọi sau khi các thẻ param trong applet được xử lý |
start | Sự kiện init được gọi, tiếp đó đến start sẽ tự động được gọi sau init. Ví dụ: khi người dùng rời khỏi Website, sau đó quay lại Website thì trình duyệt sẽ gọi phương thức start để khởi động lại applet sau khi bị dừng |
stop | Người dùng rời khỏi trang chứa applet thì sự kiện stop sẽ tự động được gọi. Sự kiện sẽ liên tục được gọi theo vòng lặp của vòng đời applet. Phương thức stop có thể được gọi lại bởi trình duyệt sau khi gọi sự kiện start, tức là khi người dùng quay lại trang. |
destroy | Gọi tự động từ trình duyệt khi nó ngừng hoạt động theo cách thông thường. Khi tất cả những dữ liệu thuộc về ứng dụng bị xóa hoàn toàn khỏi bộ nhớ |
paint | Được trình duyệt gọi ngay sau khi sự kiện start. Tuy nhiên, paint cũng được gọi ra bất cứ khi nào applet cần thực hiện repaint chính nó khi hoạt động trong trình duyệt, tức là khi applet thực hiện vẽ lại đầu ra của nó |
Lớp Applet trong Java
Mỗi Applet kế thừa từ lớp Java.applet, và với lớp cơ bản thì có khả năng cung cấp phương thức để thu thập thông tin, dịch vụ từ trình duyệt.
Những nhiệm vụ chủ yếu của lớp applet trong java đó là:
– Tiếp nhận và thu thập tham số của applet
– Tiếp nhận và ghi vị trí thư mục có chứa lớp applet
– Tiếp nhận và ghi vị trí HTML chứa applet
– In thông báo trạng thái xuất hiện trong trình duyệt
– Thực hiện rút ra hình ảnh/ audio
– Phát video
– Phục hồi kích thước ban đầu
Lớp applet trong java còn cung cấp giao diện thu nhận toàn bộ thông tin ứng dụng và điều khiển quá trình thực hiện lớp applet:
– Yêu cầu thông tin người khởi tạo, phiên bản và bản quyền của ứng dụng
– Yêu cầu tham số được applet xác nhận
– Khởi tạo hoặc hủy ứng dụng
– Bắt đầu hoặc dừng quá trình thực hiện applet
Ưu điểm của Applet trong Java
- Trước đây Applet được hầu hết các trình duyệt web hỗ trợ, tuy nhiên đã bị loại bỏ khỏi các trình duyệt do yêu cầu về bảo mật.
- Với một ứng dụng Applet có thể dễ dàng hoạt động trên mọi phiên bản sử dụng ngôn ngữ lập trình Java.
- Luôn lưu trữ nhanh chóng, dễ dàng trên trình duyệt để có thể tải nhanh và khởi động nhanh chóng khi người dùng quay lại trang web.
- Có khả năng chuyển tác vụ từ máy chủ sang máy khác giúp giải pháp mở rộng với nhiều người dùng hơn.
- Có thể hỗ trợ người dùng thay đổi trạng thái tiện lợi.
- Các vấn đề hoặc lỗi của Applet có thể được gỡ dễ dàng đồng thời vẫn đảm bảo tuân thủ các yêu cầu về bảo mật.
- Tốc độ nhanh và hiệu năng cao tương tự như các phần mềm có cài đặt gốc.
Nhược điểm của Applet trong Java
- Trên hệ thống File người dùng thì không có khả năng đọc/ghi
- Giao tiếp trong phạm vi các Website có applet.
- Trên hệ thống người dùng thì không có khả năng chạy hay tải tất cả các chương trình.
- Quyền kiểm soát bị hạn chế đối với những nội dung nằm ngoài khu vực của Applet.
- Mức độ phức tạp cao
- Không hoạt động được trên các trình duyệt di động: iOS, Android.
Phân biệt giữa Applet và Applicaiton
Mặc dù khi nhắc tới Applet hay Application thì đều là ứng dụng, nhưng để phân biệt được giữa chúng thì sẽ dựa vào:
- Applet có thể chạy trên mọi trình duyệt hỗ trợ Java hoặc tích hợp công cụ AppletViewer (thường có JDK đi kèm) trong khi các application chỉ có thể được thực thi với các trình duyệt thông dịch Java.
- Applet bắt đầu vòng đời với phương thức init trong khi các ứng dụng thông thường sẽ bắt đầu vòng đời với sự kiện main
- Applet dùng drawstring() để hiển thị và trích xuất kết quả ra màn hình còn các ứng dụng thông thường hiển thị thông qua System.out.println().
Đối với một ứng dụng thông thường được xây dựng bằng ngôn ngữ lập trình Java, thì nó sẽ sở hữu cả hai đặc điểm của application và applet, và chúng sẽ xuất hiện tương ứng khi được trình duyệt gọi tên.
Tổng kết
Trên đây là những khái niệm cơ bản nhất về Java applet, hi vọng rằng thông qua bài viết của CodeGym Hà Nội đã giúp bạn giải đáp được băn khoăn và thắc mắc cũng như có kiến thức khi sử dụng applet trong Java khi lập trình và xây dựng Website.
Xem thêm các bài viết:
0 Lời bình