Rich Internet Applications are those web applications which
provide similar features and experience as that of desktop applications.
They offer a better visual experience when compared to the normal web
applications to the users. These applications are delivered as browser
plug-ins or as a virtual machine and are used to transform traditional
static applications into more enhanced, fluid, animated and engaging
applications.
Unlike traditional desktop applications, RIA’s don’t require to have
any additional software to run. As an alternative, you should install
software such as ActiveX, Java, Flash, depending on the Application.
In an RIA, the graphical presentation is handled on the client side,
as it has a plugin that provides support for rich graphics. In a
nutshell, data manipulation in an RIA is carried out on the server side,
while related object manipulation is carried out on the client side.
We have three main technologies using which we can develop an RIA. These include the following −
- Adobe Flash
- Microsoft Silverlight
- JavaFX
Adobe Flash
This software platform is developed by Adobe Systems and is used in
creating Rich Internet Applications. Along with these, you can also
build other Applications such as Vector, Animation, Browser Games,
Desktop Applications, Mobile Applications and Games, etc.
This is the most commonly used platform for developing and executing RIA’s with a desktop browser penetration rate of 96%.
Microsoft Silverlight
Just like Adobe flash, Microsoft Silverlight is also a software
application framework for developing as well as executing Rich Internet
Applications. Initially this framework was used for streaming media. The
present versions support multimedia, graphics, and animation as well.
This platform is rarely used with a desktop browser penetration rate of 66%.
JavaFX
JavaFX is a Java library using which you can develop Rich Internet
Applications. By using Java technology, these applications have a
browser penetration rate of 76%.
What is JavaFX?
JavaFX is a Java library used to build Rich Internet Applications.
The applications written using this library can run consistently across
multiple platforms. The applications developed using JavaFX can run on
various devices such as Desktop Computers, Mobile Phones, TVs, Tablets,
etc.
To develop GUI Applications using Java programming language, the programmers rely on libraries such as Advanced Windowing Toolkit and Swings. After the advent of JavaFX, these Java programmers can now develop GUI applications effectively with rich content.
Need for JavaFX
To develop Client Side Applications with rich features, the
programmers used to depend on various libraries to add features such as
Media, UI controls, Web, 2D and 3D, etc. JavaFX includes all these
features in a single library. In addition to these, the developers can
also access the existing features of a Java library such as Swings.
JavaFX provides a rich set of graphics and media API’s and it leverages the modern Graphical Processing Unit
through hardware accelerated graphics. JavaFX also provides interfaces
using which developers can combine graphics animation and UI control.
One can use JavaFX with JVM based technologies such as Java, Groovy
and JRuby. If developers opt for JavaFX, there is no need to learn
additional technologies, as prior knowledge of any of the
above-mentioned technologies will be good enough to develop RIA’s using
JavaFX.
Features of JavaFX
Following are some of the important features of JavaFX −
- Written in Java − The JavaFX library is written in Java and is available for the languages that can be executed on a JVM, which include − Java, Groovy and JRuby. These JavaFX applications are also platform independent.
- FXML − JavaFX features a language known as FXML, which is a HTML like declarative markup language. The sole purpose of this language is to define a user Interface.
- Scene Builder − JavaFX provides an application named Scene Builder. On integrating this application in IDE’s such as Eclipse and NetBeans, the users can access a drag and drop design interface, which is used to develop FXML applications (just like Swing Drag & Drop and DreamWeaver Applications).
- Swing Interoperability − In a JavaFX application, you can embed Swing content using the Swing Node class. Similarly, you can update the existing Swing applications with JavaFX features like embedded web content and rich graphics media.
- Built-in UI controls − JavaFX library caters UI controls using which we can develop a full-featured application.
- CSS like Styling − JavaFX provides a CSS like styling. By using this, you can improve the design of your application with a simple knowledge of CSS.
- Canvas and Printing API − JavaFX provides Canvas, an immediate mode style of rendering API. Within the package javafx.scene.canvas it holds a set of classes for canvas, using which we can draw directly within an area of the JavaFX scene. JavaFX also provides classes for Printing purposes in the package javafx.print.
- Rich set of API’s − JavaFX library provides a rich set of API’s to develop GUI applications, 2D and 3D graphics, etc. This set of API’s also includes capabilities of Java platform. Therefore, using this API, you can access the features of Java languages such as Generics, Annotations, Multithreading, and Lambda Expressions. The traditional Java Collections library was enhanced and concepts like observable lists and maps were included in it. Using these, the users can observe the changes in the data models.
- Integrated Graphics library − JavaFX provides classes for 2d and 3d graphics.
- Graphics pipeline − JavaFX supports graphics based on the Hardware-accelerated graphics pipeline known as Prism. When used with a supported Graphic Card or GPU it offers smooth graphics. In case the system does not support graphic card then prism defaults to the software rendering stack.
No comments:
Post a Comment