Just while I was thinking that Client side java is well and truly dead, here comes along a project, a Really Big One, that involves developing a ‘rich Java based client’.
While I’m sure that given the right resources and time-frame, this is certainly possible, I was wondering what kind of experiences the Java community has with developing large Java client side applications.
Five years ago, Swing and Java client technology had light-years to go before matching up with native Windoze APIs. Getting Swing to do exactly what you wanted, was a guaranteed trip into pure hell itself, with all sorts of weird bugs and workarounds to deal with.
The applications that I’ve developed since then, uses VB/VC++ and talk to a Java server. This has gotten much easier nowadays with SOAP libraries available for cross-platform stuff.
Have things improved since then? If yes, by what degree?
How many ‘large scale, real world’ Java Client applications/applets that ‘work over the long term’, really are out there ?
Your responses will be immensely useful in guiding my thoughts on the right way.
I've worked on two swing-client/J2EE backend projects in the past year, and the resulting applications were very responsive, and very easy to maintain. I've done MFC, WinAPI and a little bit of VB and I found Swing to be far superior as an API. It's just a lot more flexible and it really is cross platform. Before anyone thinks to counter that, the biggest cross platform advantage of Swing is the various Windows platforms. One of my applications had to work on Win95-WinXP and it has no problems at all and works the same everywhere. Plus, with Java WebStart, updating the application is trivial and is mostly transparent to the end-user.
As for using SOAP/Web Service and a VB front-end, I guess that is an option, and if you have an investment in VB code or coders, and you may need to have a lot of front-ends, that may make sense, but Swing has come a LONG way recently, and is totally usable IMO, assuming you are well-behaved in your design and implementation. One of my apps gets deployed on boxes as old as a P233 with 32M ram running Win95, and it is snappy and responsive. Compare that to IE 6 on the same box....
If you provide a mail address, I can give you some input from a 1+ year old project (JDK 1.3.1_01). Both when ti comes to general experience and useful design patterns.