JavaFX - Tổng quan

Rich Internet Applicationslà những ứng dụng web cung cấp các tính năng và trải nghiệm tương tự như các ứng dụng dành cho máy tính để bàn. Chúng mang lại trải nghiệm hình ảnh tốt hơn khi so sánh với các ứng dụng web thông thường cho người dùng. Các ứng dụng này được phân phối dưới dạng trình cắm của trình duyệt hoặc dưới dạng máy ảo và được sử dụng để chuyển đổi các ứng dụng tĩnh truyền thống thành các ứng dụng nâng cao, linh hoạt, hoạt hình và hấp dẫn hơn.

Không giống như các ứng dụng máy tính để bàn truyền thống, RIA không yêu cầu phải có bất kỳ phần mềm bổ sung nào để chạy. Thay vào đó, bạn nên cài đặt phần mềm như ActiveX, Java, Flash, tùy thuộc vào Ứng dụng.

Trong RIA, bản trình bày đồ họa được xử lý ở phía máy khách, vì nó có một plugin cung cấp hỗ trợ cho đồ họa phong phú. Tóm lại, thao tác dữ liệu trong RIA được thực hiện ở phía máy chủ, trong khi thao tác đối tượng liên quan được thực hiện ở phía máy khách.

Chúng tôi có ba công nghệ chính sử dụng mà chúng tôi có thể phát triển một RIA. Chúng bao gồm những điều sau:

  • Adobe Flash
  • Microsoft Silverlight
  • JavaFX

Adobe Flash

Nền tảng phần mềm này được phát triển bởi Adobe Systems và được sử dụng để tạo các Ứng dụng Internet phong phú. Cùng với những thứ này, bạn cũng có thể xây dựng các Ứng dụng khác như Vector, Hoạt ảnh, Trò chơi trình duyệt, Ứng dụng máy tính để bàn, Ứng dụng di động và trò chơi, v.v.

Đây là nền tảng được sử dụng phổ biến nhất để phát triển và thực thi RIA với tỷ lệ thâm nhập trình duyệt trên máy tính để bàn là 96%.

Microsoft Silverlight

Cũng giống như Adobe flash, Microsoft Silverlight cũng là một khung ứng dụng phần mềm để phát triển cũng như thực thi các ứng dụng Internet phong phú. Ban đầu, khuôn khổ này được sử dụng để phát trực tuyến phương tiện. Các phiên bản hiện tại cũng hỗ trợ đa phương tiện, đồ họa và hoạt hình.

Nền tảng này hiếm khi được sử dụng với tỷ lệ thâm nhập trình duyệt trên máy tính để bàn là 66%.

JavaFX

JavaFX là một thư viện Java sử dụng mà bạn có thể phát triển các Ứng dụng Internet Phong phú. Bằng cách sử dụng công nghệ Java, các ứng dụng này có tỷ lệ thâm nhập trình duyệt là 76%.

JavaFX là gì?

JavaFX là một thư viện Java được sử dụng để xây dựng các ứng dụng Internet phong phú. Các ứng dụng được viết bằng thư viện này có thể chạy nhất quán trên nhiều nền tảng. Các ứng dụng được phát triển bằng JavaFX có thể chạy trên nhiều thiết bị khác nhau như Máy tính để bàn, Điện thoại Di động, TV, Máy tính bảng, v.v.

Phát triển GUI Applications sử dụng ngôn ngữ lập trình Java, các lập trình viên dựa vào các thư viện như Advanced Windowing ToolkitSwing. Sau sự ra đời của JavaFX, giờ đây các lập trình viên Java này có thể phát triển các ứng dụng GUI một cách hiệu quả với nội dung phong phú.

Cần cho JavaFX

Phát triển Client Side Applicationsvới các tính năng phong phú, các lập trình viên đã từng phụ thuộc vào các thư viện khác nhau để thêm các tính năng như Media, UI control, Web, 2D và 3D, v.v. JavaFX bao gồm tất cả các tính năng này trong một thư viện duy nhất. Ngoài những điều này, các nhà phát triển cũng có thể truy cập các tính năng hiện có của thư viện Java nhưSwing.

JavaFX cung cấp một tập hợp các API phương tiện và đồ họa phong phú và nó thúc đẩy sự hiện đại Graphical Processing Unitthông qua đồ họa tăng tốc phần cứng. JavaFX cũng cung cấp các giao diện sử dụng mà các nhà phát triển có thể kết hợp hoạt ảnh đồ họa và điều khiển giao diện người dùng.

Người ta có thể sử dụng JavaFX với các công nghệ dựa trên JVM như Java, Groovy và JRuby. Nếu các nhà phát triển chọn JavaFX, thì không cần phải học các công nghệ bổ sung, vì kiến ​​thức trước về bất kỳ công nghệ nào được đề cập ở trên sẽ đủ tốt để phát triển RIA bằng cách sử dụng JavaFX.

Các tính năng của JavaFX

Sau đây là một số tính năng quan trọng của JavaFX:

  • Written in Java - Thư viện JavaFX được viết bằng Java và có sẵn cho các ngôn ngữ có thể được thực thi trên JVM, bao gồm: Java, Groovy and JRuby. Các ứng dụng JavaFX này cũng độc lập với nền tảng.

  • FXML- JavaFX có một ngôn ngữ được gọi là FXML, là một ngôn ngữ đánh dấu khai báo HTML giống như HTML. Mục đích duy nhất của ngôn ngữ này là xác định Giao diện người dùng.

  • Scene Builder- JavaFX cung cấp một ứng dụng có tên là Scene Builder. Khi tích hợp ứng dụng này trong IDE như Eclipse và NetBeans, người dùng có thể truy cập giao diện thiết kế kéo và thả, được sử dụng để phát triển các ứng dụng FXML (giống như Ứng dụng Swing Drag & Drop và DreamWeaver).

  • Swing Interoperability - Trong ứng dụng JavaFX, bạn có thể nhúng nội dung Swing bằng cách sử dụng Swing Nodelớp học. Tương tự, bạn có thể cập nhật các ứng dụng Swing hiện có với các tính năng JavaFX như nội dung web nhúng và phương tiện đồ họa phong phú.

  • Built-in UI controls - Thư viện JavaFX phục vụ các điều khiển giao diện người dùng mà chúng ta có thể phát triển một ứng dụng đầy đủ tính năng.

  • CSS like Styling- JavaFX cung cấp một CSS giống như kiểu dáng. Bằng cách sử dụng điều này, bạn có thể cải thiện thiết kế ứng dụng của mình với kiến ​​thức đơn giản về CSS.

  • Canvas and Printing API- JavaFX cung cấp Canvas, một phong cách kết xuất API ngay lập tức. Trong góijavafx.scene.canvasnó chứa một tập hợp các lớp cho canvas, bằng cách sử dụng chúng ta có thể vẽ trực tiếp trong một khu vực của cảnh JavaFX. JavaFX cũng cung cấp các lớp cho mục đích In trong góijavafx.print.

  • Rich set of API’s- Thư viện JavaFX cung cấp một bộ API phong phú để phát triển các ứng dụng GUI, đồ họa 2D và 3D, v.v. Bộ API này cũng bao gồm các khả năng của nền tảng Java. Do đó, bằng cách sử dụng API này, bạn có thể truy cập các tính năng của ngôn ngữ Java như Generics, Annotations, Multithreading và Lambda Expressions. Thư viện Java Collections truyền thống đã được cải tiến và các khái niệm như danh sách và bản đồ có thể quan sát được cũng được bao gồm trong đó. Sử dụng chúng, người dùng có thể quan sát những thay đổi trong các mô hình dữ liệu.

  • Integrated Graphics library - JavaFX cung cấp các lớp cho 2d3d đồ họa.

  • Graphics pipeline- JavaFX hỗ trợ đồ họa dựa trên đường ống đồ họa tăng tốc phần cứng được gọi là Prism. Khi được sử dụng với Card đồ họa hoặc GPU được hỗ trợ, nó cung cấp đồ họa mượt mà. Trong trường hợp hệ thống không hỗ trợ card đồ họa thì lăng kính sẽ mặc định là ngăn xếp kết xuất phần mềm.

Lịch sử của JavaFX

JavaFX ban đầu được phát triển bởi Chris Oliver, khi anh ấy đang làm việc cho một công ty có tên See Beyond Technology Corporation, sau đó đã được mua lại bởi Sun Microsystems vào năm 2005.

Những điểm sau đây cho chúng ta thêm thông tin về dự án này:

  • Ban đầu dự án này có tên là F3 (Form Follows Functions) và nó được phát triển với mục đích cung cấp các giao diện phong phú hơn để phát triển các Ứng dụng GUI.

  • Sun Microsystems mua lại công ty See Beyond vào tháng 6 năm 2005, nó điều chỉnh dự án F3 với tư cách là JavaFX.

  • Vào năm 2007, JavaFX chính thức được công bố tại Java One, một hội nghị trên toàn thế giới được tổ chức hàng năm.

  • Trong năm 2008, Net Beanstích hợp với JavaFX đã có sẵn. Trong cùng năm, JavaStandard Development Kit cho JavaFX 1.0 đã được phát hành.

  • Vào năm 2009, Tập đoàn Oracle mua lại Sun Microsystems và cùng năm đó, phiên bản tiếp theo của JavaFX (1.2) cũng được phát hành.

  • Vào năm 2010, JavaFX 1.3 ra mắt và năm 2011 JavaFX 2.0 được phát hành.

  • Phiên bản mới nhất, JavaFX8, được phát hành như một phần không thể thiếu của Java vào ngày 18 tháng 3 năm 2014.