A solution to the Java GUI Builder misery?!
I just downloaded a 15-day trial of Foam (http://www.computersinmotion.com/products_foam.htm), released January 7, 2004. It looks very much like Mac OSX' Interface Builder. Have a look at the Flash demo videos. Isn't that what we have been looking for?
Greetings!
Please sign in to leave a comment.
Nice tool.
Very nice positioning solution, i think UIDesigner may have something
similar this.
Thanks!
"Peter Mitchub" <no_mail@jetbrains.com> wrote in message
news:30415708.1075285250105.JavaMail.itn@is.intellij.net...
(http://www.computersinmotion.com/products_foam.htm), released January 7,
2004. It looks very much like Mac OSX' Interface Builder. Have a look at the
Flash demo videos. Isn't that what we have been looking for?
>
After taking a look at their examples it has a large problem (like
IDEA's GUI builder, too): the components are not created in your Java
class, but in the Foam framework. So you are not able to use component
factories which limits development good GUIs significantly.
Tom
I don't know if this may help, but on this screenshot:
http://www.computersinmotion.com/foam_info-mainscreens.htm#mac
they show that you can add custom beans (JSortTable) to your palette.
I think Foam also exposes an API (see Javadoc that comes with it) that may help?!
Greetings!
I have been testing the program for some time now and I must say for the first time in Java UI development I feel productive.
I think IDEA's UI Designer is a pretty good solution to the "java GUI builder misery." Have you tried it?
In article <30415708.1075285250105.JavaMail.itn@is.intellij.net>,
Peter Mitchub <no_mail@jetbrains.com> wrote:
I think it's funny that a UI design app has such an ugly UI (and an ugly
web site).
(I'm not saying that the product isn't any good, it's just funny...)
Tom,
In Foam the components are created using XMLDecoder, Java's standard
mechanism for Bean persistence. And Beans are, afterall, what you are
using in Foam.
The idea is that Foam removes the need for user interfaces being
created in Java code. Java is not at all designed to hold visual
designs, and maintaining panels can be difficult when you have a bunch
of layout in Java code to understand and modify. A visual designer
makes creation, experimentation, and maintenance far simpler and far
faster!
In Windows, people would not dream of creating and building dialogs in
code, yet we suffer that daily in Java. I don't think Windows user
interfaces are limited. A visual design tool promotes better interfaces
because you are productive enough to be able to experiment, try out new
ideas, and change designs quickly!
Cheers,
Graham Perks.
http://www.computersinmotion.com
In article <bv83a2$662$1@is.intellij.net>, Thomas Singer
<nomail@nodomain.com> wrote:
In article <ehanson-lists-FB9E9B.14023928012004@host98.intellij.net>,
Erik Hanson <ehanson-lists@eh.cdeh.org> wrote:
Erik,
We've spent much more time developing Foam than working on the website,
it's true :) The web site has improved quite a bit in the last few
weeks.
I don't know what you think in Foam is ugly, but then the good news is
that it will get better :)
Cheers,
Graham Perks.
http://www.computersinmotion.com
To be fair, the Aqua version looks sweet. I think it's the windows lnf that makes foam's gui look a little primitive.
I wonder if foam deals with a big issue I have with graphical layout tools: It seems to me that graphical tools are faster, but code-based frameworks with component/panel factories, like JGoodies, promote consistency. I haven't found, or thought of, something which provides speed, ease, and enforces consistency.
On Wed, 28 Jan 2004 10:20:50 +0000, Peter Mitchub wrote:
Looks nice, but I see you still need to bind the components to the objects
using them, as with the current GUI designer in IDEA.
In article <5063315.1075345276476.JavaMail.itn@is.intellij.net>,
Russell Egan <russegan@email.com> wrote:
We all agree here that Aqua looks a whole lot better than Windows. And
Metal looks fairly atrocious in comparision!
Not in this release of Foam (which is aimed squarely at the layout
problem)... but check back over the next couple of releases, and I
think you might see something you like.
--
Cheers,
Graham Perks.
http://www.computersinmotion.com
It doesn't seem to run on anything but windows and macosx. That's a huge drawback for us. I actually considered bying it while watching the demo, then I lost interest.
Hi Graham,
I think the major problem with GUI designers is, that they try to handle
layout as well as creation of components. But only the first one should
(IMO) be solved by them, because layout code is bad readable, creation
code not. And you are a lot more flexible, if you create the components
yourself, e.g. by component factories.
I believe, with visual designers you are much less productive, because
you can experiment and forget over this task to do you real work (I'm
absolutely serious!).
Each average framework easily can achive:
- same (easy changable) spacings between components,
- flexible creation of components (e.g. switch between menu items with
or without icon),
- ability to obfuscate the code easily with each obfuscator (no need to
exclude some classes or methods).
I never have found a GUI designer that fullfills all three issues.
What's about Foam?
Tom
Tom,
Remembering our discussion about editor scrolling I find it refreshing to see that I fully agree with you on this particular subject :)
In my experience GUI design tools lure developers into fiddling endlessly with layout details rather that postponing them until after the basic interaction content and behavior has been discovered. I've fallen into this trap myself often enough.
My colleagues and I always work from informal paper drafts and code everything from scratch. Reusing proven components sub-classes from Swing ancestors combined with a few homegrown layout managers makes GUI work a simple and enjoyable task. And the resulting code is compact, easy to read and maintain, and performs very well even on less impressive (read: older) machines.
There is a learning curve with Swing but a GUI design tool will only postpone having to penetrate this part of the API.
Most developers I've met so far who wish for a GUI design tool have avoided working with GUI's because they haven't found a good tool yet. Those I have met with fairly extensive experience with GUI work all work without such tools and they all recommend their client companies to avoid them.
Best regards,
Lars Ugleberg
My experiences exactly. Very well put!
N.
Lars Ugleberg wrote:
Elias,
Those are the two platforms that we have tested on and can properly
support. We are testing on Linux, where it runs well now.
We can certainly work with you to run it on other platforms. It is
Java, afterall!
In article <27626348.1075367658633.JavaMail.itn@is.intellij.net>, Elias
M <tek102@hotmail.com> wrote:
--
Cheers,
Graham Perks
http://www.computersinmotion.com
Well, it appears that Foam, along with any other GUI designer, is not a
tool for the three of you. And that's OK.
If you want to hand-code your user interfaces, go ahead. For the rest
of us, I believe that Foam is a good answer.
I picture in my head a bunch of code, and then picture a panel in Foam.
I know which I would rather maintain, and which I would be quicker at!
I'd point out that platforms besides Java do not make programmers use a
non-visual tool to design their application's visual elements. It's
about time that Java had a good visual design tool for Swing!
Cheers,
Graham Perks.
Hi Graham,
I think the major problem with GUI designers is, that they try to handle
layout as well as creation of components. But only the first one should
(IMO) be solved by them, because layout code is bad readable, creation
code not. And you are a lot more flexible, if you create the components
yourself, e.g. by component factories.
I believe, with visual designers you are much less productive, because
you can experiment and forget over this task to do you real work (I'm
absolutely serious!).
Each average framework easily can achive:
- same (easy changable) spacings between components,
- flexible creation of components (e.g. switch between menu items with
or without icon),
- ability to obfuscate the code easily with each obfuscator (no need to
exclude some classes or methods).
I never have found a GUI designer that fullfills all three issues.
What's about Foam?
Tom
Lars and Nathan, good to see I'm not alone with this opinion.
Sure, a GUI designer significantly reduces the amount of work to show
the first GUI if you are not familar with Swing or any other graphical
framework.
But since all GUI builder I've seen so far (including Foam as well as
IDEA's GUI builder) lack in areas that are (very) important for
mid-sized to larger applications, I prefer to code by hand.
From my point of view, I would like to have a visual tool, that helps
me laying out the components (a visually configurable layout manager).
But unfortunately I never found one.
Tom
Graham,
You misunderstood me (us?). I want to layout components visually, but
the tool must not limit us in any other way. That's the point.
Cheers,
Tom
Seems to be a good day for computersinmotion ;)
All the best
Chris Schreiner