Case Studies Using JavaFX™

Case Studies Using JavaFX™

DOI: 10.4018/978-1-4666-6437-1.ch011
OnDemand PDF Download:
$30.00
List Price: $37.50

Abstract

JavaFX™ 2.0 is the evolution of the Java programming language as a rich client platform. JavaFX™ platform provides multiple advantages to Java developers and companies that are part of the Java ecosystem, including the ability to leverage existing Java skills and development tools, as well as extending Swing applications, thus providing a migration path towards more modern and flexible User Interface (UI) technologies. This chapter first goes in depth on the JavaFX architecture and describes the benefits of using JavaFX to develop highly interactive Web applications; then, it presents four case studies on the development of JavaFX™-based Rich Internet Applications (RIAs) built on top of popular social networking services. For each case study, reviews of some similar real world implementations publicly available on the Internet are provided.
Chapter Preview
Top

1. Introduction

JavaFX™ 2.0 is the evolution of the Java programming language as a rich client platform. It was designed to provide a modern Java-based environment that shortens the development time and eases the deployment of data driven business and enterprise client applications. The JavaFX™ platform enables application developers to easily create and deploy Rich Internet Applications (RIA) that behave consistently across multiple platforms. Built on Java-based technology, the JavaFX™ platform provides a rich set of graphics and media API with high performance hardware-accelerated graphics and media engines that simplify the development of data-driven enterprise client applications. JavaFX™ platform provides multiple advantages to Java developers and companies that are part of the Java ecosystem, including the ability to leverage existing Java skills and development tools, as well as extending Swing applications, thus providing a migration path towards more modern and flexible UI technologies.

The JavaFX™ API enables developers to create UIs that seamlessly work across different devices. The common profile of the JavaFX™ API includes classes that function on both the desktop and mobile devices. However, additional classes and packages can be used from the desktop profile to take advantage of specific functionality that can enhance desktop applications.

JavaFX™ was announced on May 2007 at the “World Wide JavaOne Developer” conference by Sun Microsystems in order to help content developers and application developers to build Rich Internet Applications on mobile devices, desktops, televisions and other consumer devices. At December 4, 2007 was launched the first version of this technology that initially consisted of JavaFX™ Mobile platform and JavaFX™ Script language. JavaFX™ 2.0 has new features which its predecessor lacked; the main features are listed below:

  • Java APIs for JavaFX: The APIs set are designed to be friendly with different Java Virtual Machine-based programming languages ​​such as JRuby and Scala. Due to JavaFX™ capabilities are available through Java APIs, tools such as IDE, code refactoring, debuggers and analyzers can be used to develop JavaFX™-based applications.

  • A New Graphics Engine: It handles modern graphics processing units (GPU). The basis of this new engine is a hardware accelerated graphics pipeline, called Prism, which is coupled with a windowing toolkit, called Glass. The graphics engine is the basis for current and future developments for rich graphics in a simple and fast way.

  • A New Multimedia Engine: It supports playback of multimedia content on the Web. It provides a stable and low latency that is based on the GStreamer multimedia.

  • A Web Component: It provides the ability to embed HTML-based content within a JavaFX™ application by using the WebKit HTML rendering technology. The view of hardware acceleration is available by using Prism.

  • An Updated Browser Plugin: It allows loading JavaFX™ applets based on Prism.

  • Miscellaneous Components: A wide variety of integrated controls for user interfaces, including graphics, tables, menus and panels. Furthermore, it provides an API to allow others to contribute their own user interface controls for the user community can use them.

In the following section, the main components of the JavaFX architecture are described. This chapter presents four case studies of the development of JavaFX-based RIAs built on top of popular social networking websites. In detail, this chapter addresses the development of three photo albums based on Flickr™, Picasa™ and Photobucket™ websites, respectively. In addition, the development of a search engine for movies based on Rotten Tomatoes™ website is finally addressed.

Top

2. Javafx™ Architecture

The JavaFX™ platform is a rich client platform (RCP) built on Java-based technology and designed to allow developers to easily build and deploy Rich Internet Applications having a consistently behavior across platforms.

The Figure 1 presents the architectural components of the JavaFX™ platform which describes each component and how they are interrelated (Debnath, 2012).

Figure 1.

The architectural components of JavaFX™

Complete Chapter List

Search this Book:
Reset