Wednesday, August 23rd, 2006
The Tibco folks like to point out that their IDE is written in their own framework. I’m not really all that enamored of the self-compiling, eat your own dogfood approach to IDE’s when your end product is a webapp. Call me old fashioned, but I like to write my code in a desktop IDE. Maybe that’s just a sign that my arteries are hardening and I’ll soon be standing on the lawn in my slippers and bathrobe cursing at those webapp IDE using whippersnappers.
Well, for good or ill, Tibco GI is no longer the only IDE that eats its own dogfood. ZK has a visual designer called Zero Kode, an IDE written in ZK that allows you to visually design a ZK application. From part I of the tutorial that accompanies the IDE:
The visual editor is just a web application – packed in a ‘*.war’ file’ – that can be launched on an application server. It provides a visual interface with a toolkit that holds all the visual components that the ZK framework has implemented so far and is designed to use all kinds of custom components as well. This means that a developer can add to the toolkit components that he/she has designed, as far as they are compliant with the framework’s protocol.
The developer drags-and-drops visual components on the active model, sets their properties (which are reflections of the corresponding Java class) and sets their events as well. Definitions of all the visual components found in the toolkit, are kept in an XML configuration file that can be edited by the developer in order to add, remove or re-order components. The developer can also load an existing ‘*.zul’ file and modify it.
When run locally in an instance of Tomcat it’s actually quite zippy. Still, you have to know your way around the ZK component heirarchy. Constructing tabbed panes and trees, for example, can be a bit of a pain. Some wizard functionality would be useful here. Also the property editor should probably be a part of a tabbed pane — instead of a popup — as you’ll find in Eclipse or Visual Studio. (To be really useful, make sure to set the session timeout to a large value. There’s nothing worse than having a design go puff because of a timeout.)
So, is it a toy or something useful? ZK zul files are pretty easy to write, which would argue for a verdict of toy, but I find the convenience of property and event handler editors quite useful. Altogether a promising start.
Posted by Dietrich Kappe at 2:02 am