Top AJAX tools deliver rich GUI goodness
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.
|
