|
YOUR FEEDBACK
Did you read today's front page stories & breaking news?
SYS-CON.TV
|
TOP THREE LINKS YOU MUST CLICK ON FrontPage Feature AJAX, Java, Flash, and .NET
Enterprise Rich Internet Applications (RIAs) are the next evolution of business application development
By: Coach Wei
Jun. 8, 2006 04:00 PM
Enterprise Rich Internet Applications (RIAs) are the next evolution of business application development. There are four different approaches to RIA development - AJAX, Java, Flash, and .NET - and many different RIA solutions available today. This article answers the following questions: What are enterprise RIAs? Which approach should you use? Which solutions are appropriate for you? And how are RIAs being adopted today?
Beginning in early 2005, popular new Web applications like Gmail, Google Maps, and Flickr awakened the entire Internet community to the possibility of a far richer Web experience. Web developers were quick to discover and leverage the technical approach that these applications used, which was first termed AJAX (for Asynchronous JavaScript and XML). The excitement around AJAX focused more attention on the wide spectrum of Rich Internet Application (RIA) development tools and the various approaches available. Gartner calls RIAs "the next evolution of the Web." They represent the next big evolutionary step for enterprise application development. They deliver the high performance and robust functionality of desktop or client/server software combined with the universal reach, no-install deployment, and centralized management of browser-based apps. RIAs represent the next paradigm for building, deploying, and maintaining enterprise applications. The impact of RIAs on business will match that of PC desktop computing - bringing operational efficiency and productivity to a whole new level, while decreasing costs.
Enterprise RIAs versus Consumer RIAs
Enterprise RIA Opportunities Organizations that seek competitive advantage or greater operational efficiency are increasingly exploiting RIA technology to re-architect traditional client/server applications, such as those written in Visual Basic or Java Swing. RIAs can offer all the rich features and performance benefits of these "thick client" alternatives, while eliminating the need to install and maintain a custom client on user desktops. Enterprise RIA technology is also of great value to companies that wish to improve the performance and user experience of traditional HTML-based Web applications. RIAs can radically improve the responsiveness of browser-based applications because they enable processing to take place on the client, thus reducing network demands in comparison to HTML's inefficient "click-wait-refresh" model. Moreover, Enterprise RIAs mesh perfectly with Service Oriented Architecture (SOA) and Web Services initiatives (see references to Dion Hinchcliffe and Dana Gardner). Their role in this model is to deliver SOA-based services to users via a wide range of devices, while at the same time reducing the cost and complexity associated with managing networks and client-side deployments. In particular, RIAs can reduce the need for development teams to create multiple interfaces to applications using disparate technologies, as is the case with client/server and HTML-based architectures today. As SOAs become the method of choice to deploy both new and existing business services, enterprises will increasingly employ RIAs to bring those services to their end users.
Approaches to RIA Development
Comparing RIA Approaches Among the OOP-based approaches:
RIA Solutions Today
General RIA Programming Model
Declarative UI Development Below are examples from a scripting-based approach (Laszlo Systems) as well as an OOP-based approach (Nexaweb). Both are zero-install and can run inside any popular Web browser today without any software download. On the client side, Laszlo requires a Flash engine (Flash 6 and above) while Nexaweb requires a JVM (JDK 1.1 and above). Laszlo is a Flash-based RIA solution. It uses an XML UI markup language called "lzx" to describe the UI and uses ActionScript to code application logic. The Laszlo server will automatically compile lzx files into the Flash binary format (SWF), deliver the SWF files for rendering inside a Flash engine, and execute the application. (Figure 1) Following is an example of the Laszlo code:
<canvas height="450"> By comparison, Nexaweb is a Java-based RIA product. Developers would use an XML-based UI markup to create a rich user interface and build client-side business logic by writing client-side Java objects called Managed Client Objects that are standard Java program objects. The Nexaweb client runtime dynamically renders the XML UI markup to present a rich user interface, and dynamically downloads client-side Java objects to the client side for execution in a "on-demand" fashion. (Figure 2) Here is a simple Nexaweb UI that defines a tree and a button managed by a layout manager:
<xal xmlns="http://www.openxal.org/xal"> As shown in these two code examples, though Nexaweb uses Java and Laszlo uses Flash, RIA UI development is conceptually identical between the two different RIA solutions. YOUR FEEDBACK
LATEST AJAXWORLD RIA STORIES
SUBSCRIBE TO THE WORLD'S MOST POWERFUL NEWSLETTERS SUBSCRIBE TO OUR RSS FEEDS & GET YOUR SYS-CON NEWS LIVE!
|
SYS-CON FEATURED WHITEPAPERS MOST READ THIS WEEK |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||