I don't know if it helps to note that I found I could easily create ugly UIs in .Net which had events and such. There are aspects of the .Net windows forms library which are I could argue messier than Java AWT or Swing. One example is that Java seems to have a very standard set of events which are available on all components i.e. mouse events and key events. There does not seem to be such a standard in Windows Forms on .Net. Windows Forms on .Net is basically AWT style where the components are just thin wrappers around native Win32 components. Going back to the events, there was a need to fire something on either a mouse down or key down (I can't remember exactly) event on a ComboBox on .Net. The event required was not available so the only way to do it was to tap into the native messages and respond to it there. Microsoft only have to abstract (thinly) over their own native windowing API and it seems they can't even do that great of a job doing that. I haven't done huge amount with Windows Forms but when I was dabbling I noticed it seemed like the components really liked to ignore settings I gave things like colours and stick to Microsoft defaults. Just trying to make a label or a text box be a certain colour seemed less of a battle in Swing / AWT than in .Net. I felt like Windows was just saying "I am sorry Dave I am afraid I can't do that..." which is all the more confusing because my name isn't even Dave. Then the amount of headache involved in shutting down a .Net Windows Forms application which has multiple windows open seemed far more of of a headache to get right than for a Swing / AWT application. It may be a matter of what I am used to. In Windows Forms things tended not to execute the way I would have predicted. For all this .Net is generally touted as being better for UI. I am not sure I agree with this. It may be more of a case of a lot of native Windows Forms developers who are familiar with all the quirks moving to .Net because it seems a natural progression. Then we have Windows Presentation Foundation. This seems to be a more Swing esque solution where the library is handling drawing on top of a hardware accelerated pipe rather than wrapping native components. The bits of information I am hearing though imply that not many people are using WPF. I suppose it has something of a niche in Silverlight (given that it is basically the only option available).
The Java platform has enough low level drawing control to create good looking UIs. It is really a question of how easy it makes doing so. Look and Feels never seem to have been a strong point though I have seen some really good looking 3rd party ones. JavaFX has kind of highlighted that the Java platform can do good UI if you throw Look and Feels and Swing out of the equation. Even Nimbus though a great improvement over the old Look and Feels doesn't look exactly stunning to me. Is .Net considered to be a good UI choice because of always having heavily pushed and designed around using a GUI creator? Maybe that does make laying things out easier but I think it may make people gloss over whether the actual UI classes are well designed because many use the UI designer to the point they don't deal with these classes directly anyway. -- You received this message because you are subscribed to the Google Groups "The Java Posse" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/javaposse?hl=en.
