Slashdot Mirror


Is Client-Side Java Dead?

maverick2003 asks: "Just while I was thinking that client-side Java is well and truly dead, here comes along a project, a really large one to boot, 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 will 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?" What would you use as an example of a large-scale, real-world, high-quality client-side Java application?

4 of 109 comments (clear)

  1. Java is pretty mature by ObviousGuy · · Score: 5, Insightful

    Sure, it's not popular or common on the client-side in either application or applet form, but it does exist.

    Most operating systems ship with some sort of Java VM, you should be able to deploy wherever you want and expect at least some support.

    Sure, it's neither as fast as true binary code nor is the GUI as pretty as native apps, but if you wanted those you wouldn't be thinking about Java in the first place.

    Java is as dead as Perl on the client. It's dead to all those who don't use it, but for those that do, it's indispensable.

    --
    I have been pwned because my /. password was too easy to guess.
  2. Re:Once more. This time with feeling. by Bouncings · · Score: 2, Insightful
    Yes, most impressions on Java are based on the versions of Java they've used. And you know what, they should be. Perhaps you can create a clinical environment using certain JVM's on certain operating systems in which Java's performance and stability are acceptable.

    But you know what? On my non-optimized platform with my web browser's somewhat old Sun JVM, Java is a dog. And the fact that there are a few successful java programs that may or may not work well on my PC is not persuasive.

    --
    -- Ken Kinder ken@_nospam_kenkinder.com http://kenkinder.com/
  3. Laughable by Twylite · · Score: 3, Insightful

    This is completely laughable. Since its first release (as an add-on package, not even part of the JDK) Swing has been one of the most mature and best designed GUI toolkits available. The only three allegations which can be justifiably levelled against Swing are:

    • Swing has historically had performance problems, and these have not been entirely addressed;
    • Swing was difficult to develop by virtue of not having GUI builders (but no more difficult than most other non-script toolkits without builders);
    • Swing presents a GUI model slightly more complex than is typical, and many developers dive in without understand it (this is especially true for X-Windows developers who have less experience with threads and the concept of a separate thread dedicated to the GUI.

    Most developers who complain about the difficulty of using Swing are simply missing the point. I have had developers argue for hours about how terrible the table/tree components are, because you have to do "all that useless shit with models", and you can't just say "table.setCellAt(x, y, value)". Similarly there are a dearth of developers (especially those from the MS Windows world) who understand the need for layout components, as opposed to using absolute dimensions and coordinates.

    For anyone who disses Swing, make sure you've read the Java Look and Feel Design Guidelines. Better than a Swing manual or introduction, it investigates building real-world applications with Swing, focusing on user experience and usability.

    Swing's support for consistent navigation; centralised control over colours, widget L&F and localization; as well as its powerful and extensible widget set (e.g. TreeTables and the SwingSet2 demo) put it years ahead of most other toolkits, even now. Java's native L&F has improved over the years, to the extent that (for win32 at least) you can create Java apps that look native.

    But Swing is not a silver bullet. With any cross platform toolkit you will run into problems. Qt, GTk, and Wx all have issues that need to be resolved when porting the app using them to a new platform. Similarly there is some effort to ensure that your Java/Swing application looks and behaves consistently on all its target platforms. In my experience Swing is far more portable than other toolkits, with the possibly exception of Tk. If performance is paramount in your application, then Swing is not for you; but this certainly doesn't make it unsuitable for an average business application.

    --
    i-name =twylite [http://public.xdi.org/=twylite], see idcommons.net
  4. Re:Java not an option in my biology research by TheLink · · Score: 2, Insightful

    "If you had this assignment today"

    Good thing he didn't use Java then. Rather than waiting for Java to catch up, he did it in something that was ready.

    Java is still in the process of catching up. They're adding stuff which should have been standard long ago (rather than tons of other junk). Unfortunately since it started crap and big, the added stuff means it's becoming tolerable but bloated.

    Due to the "write once run anywhere" hype they need some semblance of backward compatibility so they have to keep a lot of crap stuff around as standard. Deprecating everything would make them look like idiots not to mention those who bought the hype.

    --