Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
RE: RE: [platform-swt-dev] org.eclipse.swt.SWT


Joe, please understand "acepted OO design methodology" would only apply if this was an effort to build a Java GUI on an idealized "OO window system". It is not. As David Whiteman alluded in a previous email, most of the SWT team has had somewhere around 15 years of experience solving the particular problem of building OO interfaces to platform window systems. Their design decisions are based on a very strong history of knowing what _actually_works_.

Having said that, the truth of the matter is that (as you have already discovered) there are strong feelings about this issue. The implication is that, if you want to see the API changed, then you are going to have to earn a place as a respected SWT committer and work within the system to see the change happen.

McQ.



"Joe Pluta" <joepluta@xxxxxxxxxxxxxxxxx>
Sent by: platform-swt-dev-admin@xxxxxxxxxxx

02/27/03 02:39 PM
Please respond to platform-swt-dev

       
        To:        <platform-swt-dev@xxxxxxxxxxx>
        cc:        
        Subject:        RE: RE: [platform-swt-dev] org.eclipse.swt.SWT



> From: Veronika_Irvine@xxxxxxxxxx
>
> You disagree with our philosophy and that is fine.

I think (in my opinion) your design philosophy differs with accepted OO
design, which confuses me.  This is not my personal philosophy, it's just
what I've read in every OO design methodology text I've ever seen.  I'd be
interested to see something that suggests that public attributes are a good
thing.


> However, if you
> understand the philosophy you will see that it is actually applied
> meticulously within SWT.

When does setText in a label take effect?  As far as I can tell, not until
you do a call to layout.  Or am I mistaken in this?


> We chose to make it easy to distinguish when
> things are done immediately and when an additional step is
> required. Using
> getters/setters in GridData will result in a loss of information which
> will have to be captured instead in Javadoc.

This is another pretty bad argument, if you think about it.  Because this is
exactly the kind of information that SHOULD be in Javadoc, not in some sort
of "understood" internal design philosophy.  Where exactly in the SWT
documentation does it state this design philosophy?  How does a new SWT
programmer learn this?  Or is it just something you decided on amongst
yourselves, regardless of the accepted conventions of design, and pass on to
programmers through experience?

It's an interesting concept, but since it directly opposes convential
wisdom, is not documented, and is not strictly enforced, it's unlikely to be
intuitive to newcomers.

Joe

_______________________________________________
platform-swt-dev mailing list
platform-swt-dev@xxxxxxxxxxx
http://dev.eclipse.org/mailman/listinfo/platform-swt-dev


Back to the top