Support for HTML and CSS These two languages are perfectly suited for implementing the “look” of an application, plus they are familiar to most developers of web-based user interfaces.There is no reason to recreate the wheel.
Provide an Open Widget Framework As stated earlier, widgets are a fundamental building block of RIAs.There are several widget toolkits available from the likes of Yahoo, Dojo, and ExtJS.There are also several standalone widgets that have been created by smaller projects and individuals.You can build RIAs using these widgets, but there are some catches:
It's unlikely that one widget offering is going to meet all of your needs.
Integrating different third-party widgets may require custom code as well as an in-depth understanding of how each widget works.
Writing new widgets is challenging because you either have to write to the low-level API of your preferred widget toolkit, or you have to write your own from scratch.
Some widget frameworks require developers to write a significant amount of JavaScript just to use their widgets, which is problematic for those with little to no JavaScript experience.
In order to address the problems above, an RIA + SOA platform should provide an Open Widget Framework that has the following capabilities:
Supports integration of existing third-party widgets
Provides a simple API for creating new widgets
Enables widgets to be used via simple markup (no JavaScript required)
Supports a distribution model that makes it easy to submit, find, and use new widgets
An Open Widget Framework will provide developers with one source for obtaining widgets and one simple way to integrate these widgets into their application.If a particular widget is not available, it can be easily created using the Open Widget Framework API.
Given the importance of widgets within RIA development and the fragmented nature of widgets today, an Open Widget Framework should be considered an essential part of any RIA + SOA platform.
Provide an Integrated RIA Programming Model
Developing RIAs requires significantly more user interface code than traditional web-based applications.As a result, a next generation platform needs to provide an integrated RIA programming model that facilitates and simplifies the key user interface programming tasks.These tasks include:
Event handling
DOM manipulation
Service consumption (Ajax)
Event handling, DOM manipulation and Ajax enable the “rich” in rich Internet application.It doesn’t take much investigation to see that they are closely related. To illustrate this point, let’s look at the typical steps involved with an RIA login form submission:
Login button is clicked (event handling)
Service request is sent (Ajax)
Some type of activity indicator is displayed (DOM Manipulation)
Service returns (Ajax)
Activity indicator is hidden (DOM Manipulation)
A Login “success” message is displayed (DOM Manipulation)
Despite their close relationship, most frameworks and libraries provide only light integration between the three, leaving the developer to bridge the gap.To illustrate this point, let’s look at some code.In the example below, we will set the contents of one combo box when the value of a second combo box changes.This example is written using JQuery:
About Nolan Wright Nolan Wright is co-founder and CTO of Appcelerator, leading the company's product and services organizations. Prior to starting Appcelerator, he led engineering and product management at Vocalocity. He has also held several senior technology, product management and consulting positions with Accenture, Netscape Communications and Vertical One. Wright is a graduate of Vanderbilt University, where he earned his BEEE in Electrical Engineering. For more information, please visit http://www.appcelerator.org.
SUBSCRIBE TO THE WORLD'S MOST POWERFUL NEWSLETTERS
SUBSCRIBE TO OUR RSS FEEDS & GET YOUR SYS-CON NEWS LIVE!
Click to Add our RSS Feeds to the Service of Your Choice: