• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Tim Cooke
  • paul wheaton
  • Jeanne Boyarsky
  • Ron McLeod
Sheriffs:
  • Paul Clapham
  • Liutauras Vilda
  • Devaka Cooray
Saloon Keepers:
  • Tim Holloway
  • Roland Mueller
Bartenders:

Scott: The Desktop Rich Client

 
Ranch Hand
Posts: 15304
6
Mac OS X IntelliJ IDE Chrome
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
There have been a lot of talks, especially recently do to a blog on java.net, about why developers aren't shipping Swing clients to customers. I was wondering what you felt is keeping Swing held back and does your book address any of the current concerns about rich clients in general and how to overcome those hurdles with respect that everyone seems to think webapps are best these days.

Thanks.
 
author
Posts: 73
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
There have has been a lot of blog posts in recent weeks (Joshua which you mentioned on Java.net included). I think a number of things have contributed to Swing and rich clients in general being where they are today. Swing got pegged with the stereotype that is was slow. This is just now starting to shake off. The .com buzz combinded with J2EE etc made web applications the hot thing in terms of developer mindshare the last few years. Finally, desktop frameworks didn't rise to the top the way Struts, WebWork, Tapestry, etc have on the web side. Right now I think things are changing for the better. Companies are realizing that they can't easily get interactive functionality they need with a browser based application.

Now as far as what is holding Swing back / moving forward.

1. Deployment - Webstart is making inroads in this department, but I think it needs to simply just work for users. Until that point you can't use it for massly deployed commercial apps especially. In a corporate enviroment you have some room due to standard configurations on PC's, etc.

2. JRE - Related to deployment is the JRE. The only way to guarantee that things work is to ship your own JRE. I've seen some blog posts where people have gotten this down to 7mgs or so with compression and removing unneeded classes. Sun needs to make a commitment to getting Java on machines and upgraded with new releases.

3. Evolution of Frameworks - There is still a lot of code that is written and rewritten on the desktop side. I'm hopeful that projects like JDNC and Spring Rich will cause desktop developers to start reusing and enhancing libraries more so there is less total work in getting a Swing client started and working.

The book addresses a number of areas where developers typically have struggles with Swing. The first few chapters go into detail about easing the issues of laying out components. Using the JDK included layouts, placing components is more difficult than creating HTML. I go into things like creating reusable builders to cut down on the code created to build a form. Chapter 5 (which I think is going to be the sample chapter) is a detailed explaination of desktop threading. Finally, chapters 6 and 7 cover Data Binding and Validation using the JGoodies frameworks. These two frameworks can greatly improve application construction time and code simplicity.

The game plan at the moment is to write a sample application in the first few chapters after the 1.0 release. Then I plan on coming back around chapter 10 and doing an entire chapter on client/server communications issues. This chapter should be of particular interest from a rich client perspective.
 
Ranch Hand
Posts: 3178
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Originally posted by Scott Delap:
Chapter 5 (which I think is going to be the sample chapter) is a detailed explaination of desktop threading.



Hi Scott,
Will the sample chapter be available during this book promotion so that we can scan thru the chapter and shoot some questions on you? Chapter-13, JDNC is also interesting to make it as a sample chapter for us to have a look at... Or is it the main chapter that will raise the sales of the book? Thanks...
[ April 05, 2005: Message edited by: Ko Ko Naing ]
 
Ranch Hand
Posts: 76
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Originally posted by Scott Delap:

3. Evolution of Frameworks - There is still a lot of code that is written and rewritten on the desktop side. I'm hopeful that projects like JDNC and Spring Rich will cause desktop developers to start reusing and enhancing libraries more so there is less total work in getting a Swing client started and working.



I totally agree with you. I myself used to be a desktop application developer. It was quite a struggle to develop one deliverable application for client. However, it's not the case when we switch to web development. Struts make sure that our previosly done project can still be applicable for other client's applications.
 
Ranch Hand
Posts: 2166
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hi Scott,

I find your plan very interesting. Book appears to be directed towards writing swing applications using frameworks like the JGoodies Validation and Data Binding (something I wanted to play with some time yet).
Also using spring on the desktop sounds promising.
Not yet another discussion of a swing api (a lot to discuss for sure).
What I am missing is deployment. Will there be a chapter about deployment with java webstart or other?

Axel
 
Gregg Bolinger
Ranch Hand
Posts: 15304
6
Mac OS X IntelliJ IDE Chrome
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Originally posted by Axel Janssen:
What I am missing is deployment. Will there be a chapter about deployment with java webstart or other?



See here
 
Scott Delap
author
Posts: 73
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
There will be a chapter focused solely on deployment. There will also be a JDNC chapter at some point after 1.0. It isn't just for marketing purposes either =). JDNC includes a number of components that extend standard Swing that are worth covering. Examples of this are the JTable highligher pipeline structure and the calendar component. I'd also like to compare and constrast the binding and validation framework in JDNC vs JGoodies.
 
reply
    Bookmark Topic Watch Topic
  • New Topic