The buzzword AJAX (Asynchronous JavaScript and XML) is just a few months shy of its second birthday, but it’s already ubiquitous, and even the technology itself has begun to gather steam. Its success is no surprise to some of the major commercial AJAX-tools vendors -- they all started building their packages for conquering the JavaScript layer long before the buzzword arrived. Some are more than five years old, and it’s easy to use adjectives including “mature,” “established,” and “polished” to describe these wares.
For this roundup, we examined four of the leading products, in alphabetical order: Backbase, Bindows, JackBe NQ Suite, and Tibco General Interface. All offer broad widget collections, rich tools, sophisticated debuggers, and development platforms that rival any of the IDEs for traditional languages. Writing JavaScript used to be like taking a trip to the jungle, but now it’s as plush as a five-star hotel.
Many developers begin dabbling with AJAX by downloading some of the well-known open source toolkits (see "Surveying open-source AJAX toolkits"). Collections such as Dojo and Rico are good introductions that let you insert a widget in a Web page without too much work. It’s even pretty easy to link up these widgets to the server with some asynchronous code that syncs the browser page with information from a distant server. The open source kits are fertile, but they still feel somewhat experimental, and much rawer than the top-end, commercial products discussed here. You wouldn’t use Backbase, Bindows, JackBe, or Tibco General Interface to just put a fancy table here or an animated button there, although you could. These are full frameworks that function best when you buy into them and give your entire application over to their structure.
All of these systems are built around full collections of widgets that are joined with a central backbone of events and server calls that link the widgets in a cohesive set of panes. All of the standard parts of a Web form, including selection boxes, text boxes, and buttons are available for your use, but that’s not all. The developers have also automated many parts of a Web page that are normally fairly static. You can make tables reconfigure themselves, adding or subtracting data in response to clicks or distant changes in a database. Events flow across a central bus to all parts of the system -- much like many of the standard object-oriented application frameworks. It’s a programming experience that’s closer to creating a new desktop application than building a Web page, and the results show it. Your packages will look and behave like a desktop application with features such as pull-down menus and panels that aren’t a normal part of a Web designer’s repertoire. I’ve been examining these packages for several years now, yet I’m still floored by how easy it is to add OS-level features such as drag-and-drop icons to your homepage. This is not the 1990s Web.
The major differences among these packages lie not in the capabilities, but in the server support and the finer details of their approach. Although it may be easy to find one widget or design structure in each of the packages that outshines the others, the cores of the four packages are similar, and they’re all built around the standard UI widgets. They’re defined by the fact that all of them manipulate the
Click for larger view. |
The real differences appear in the integration with the server. Some of the packages expect the server to package the data in Web services. Others have extensive server frameworks that integrate the client application with the company’s databases and machines. All of them integrate with the major server technologies such as JSPs and PHP at some level, but some offer more extensive support for packages such as Java Server Faces and others.
The packages are also maturing rapidly. Although I tested fresh versions of Bindows (2.5), Backbase (3.2) and JackBe (4.6.1), new versions (3.0, 4.0, and 5.0, respectively) are right around the corner. A number of new features are working their way into the core of the projects; the real excitement lies on the edges where the companies are exploring the best way to integrate their core browser development environments with the servers. The vendors aren’t making as many changes to the core architectures of the products these days.
If there’s any bad news, it’s that JavaScript is still a bit flaky and browsers aren’t as stable as we would like them to be. I found glitchy behavior in many of these systems whenever I used them in slightly different configurations. The frameworks do a great job of abstracting away much of the trouble in dealing with JavaScript, but they can’t fix all of the underlying bugs.
Backbase 3.2
The Backbase package was born in Amsterdam, a fact that’s almost immediately apparent because of the European flavor to the design. The product itself uses an XML-based language to link the various widgets. You don’t really write JavaScript as much as drop together XML tags to specify everything from the event routines to the layouts. The code looks as clean and crisp as the IDE.
Peter Wayner is contributing editor of the InfoWorld Test Center.
|
|
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Talkback
E-mail
Printer Friendly
Reprints




