ich internet applications (RIAs) have taken center stage in software development, with Adobe, Microsoft, and Sun rolling out their AIR, Silverlight, and JavaFX technologies, respectively. Developers' unfamiliarity with these new products has led to misunderstandings about their purpose, how they fit into RIA development, and whether they target different niches or compete directly with each other. In a nutshell, Adobe AIR enables Flex and DHTML developers to build applications for the desktop; Silverlight allows developers to build rich media applications that run in the browser; and JavaFX Script lets developers build rich user interfaces for Java applications.
This article provides a practical demonstration of each technology. Three complete examples walk through the process of building an application in Silverlight, AIR, and JavaFX, highlighting the strengths and weaknesses of each one. It concludes with a discussion of the similarities and differences between them so you can better understand how each fits within your development needs.
The demo application is a simple stopwatch gadget that imitates a typical stopwatch device (see Figure 1). It has two buttons (one to start or stop the timer, another to reset it) and a mixed analog/digital presentation (the second and minute hands are combined with a digital display).
Each example provides instructions for the following tasks and then concludes with an assessment of the given technology:
- Setting up the development environment
- Building a user interface (UI) from original artwork (The artwork was created in the SVG format using the open source Inkscape vector graphics editor. See Figure 2.)
- Implementing the animation
- Adding interactivity
- Deploying the final application