Tuesday, April 17, 2007

Next UI framework

My idea about having a UI framework which should be able to define the UI without having in mind the underlaying device is still hot.

Let's see which are the features expected from a UI framework:
- able to draw UI widgets like: buttons, lists, combos etc.
- draw a view composed from UI widgets based on a model
- capture the user behaviour and sent it to the business component

Do you see any other important features for a UI framework?

If these is enough, then why not having an abstract framework to let us define the UI without having in mind the real UI device.

For example:

I want to create a button.
Button ok = new Button();
...
window.add(button);
button.addListener(myListener);
...

Having this code, is it really important the device?

I think now.

Question: Has sense to try to define an abstraction for the UI, and then to provide several implementations?

Here are some advantages:
- design once, display everywhere .... :) this should be a trademark, isn't it
- avoid duplicating UI code

Disadvantages:
- can not hack the code for a specific device ... is this so bad ? just think to the current UI widgets 80-90% are available to all devices
- maybe some overhead will be added by abstraction

Inventing this abstraction is so bad?