In a GSoC proposal comment ben asked me to comment on what I wrote: > For building good UIs, UIPainters of the most common kind > (Delphi, Visual Studio, Interface Builder) provide very little added value. > They sometimes provide guidelines for spacing and alignment, > but also seduce developers in not building the right abstractions, > making the applications prohibitively expensive to evolve.
The typical way developers get started in Delphi, is by dragging some controls on a window and directly filling in the event handlers. That makes projects easy to plan, as there will be a lot of repetitive work with not much thinking needed. Once you get to 50 screens, making small adjustments to the layout of the application gets to be annoying though. "We have a new company house style, this is the new background color and we now use a Gill Sans instead of Arial". The editing of component attributes is at the lowest level, so it needs to be changed in all components individually. Different fonts have different widths, so changing fonts has layout consequences throughout the whole application. Interface Builder provides pop-up guides to help with alignment and spacing instead of a simple grid. It knows about sizes and expected distances to make an application look like a mac application. > The added value of a UIPainter is in attracting people new to the platform, > and helping them explore the environment and its possibilities. One of the things that makes Delphi attractive as a platform is that you can build and deploy a simple application in less than 5 minutes. Stephan
