Updates
Latest Tweet
What's New?
Check out for latest innovation, a computer based training video collection
Like this Page
SWT: A Developer's Notebook Review by Simba
Has no business being a Developer's Notebook
If this book were named "A Beginner's Guide to GUI Programming in Java", then the very entry level nature of the content would be acceptable. But it isn't. It is supposed to be a Developer's Notebook, which is geared towards experienced developers. When it comes to addressing the needs of that audience, the book fails miserably at its goal, and sometimes even makes you downright angry to read because of the author's often very patronizing statements. As an example, the author makes the statements at one point "Menus are the primary application navigation tool you provide for your users", and in another section "Most toolbars use images instead of text"... Does the author think we have never used a GUI application before?
On the back cover of the book, it says "You already know what you want to do, so wading through the basics of user interface design, graphical components, and what a button does is simply a waste of time." And yet thats exactly what the author does at the start of each chapter. Explaning what a menu is, what a toolbar is, what a button is, etc.--stuff that the average computer user already knows, even if they aren't a developer.
As you get closer to the end of the book, you start to notice that the author begins duplicating code more often, sometimes taking up three pages with irrelevant code to demonstrate a new concept that involves 3 or 4 lines of code. I suspect the author was getting close to the end of the book and needed to bulk up the page count to make up for the fact that the coverage of the various SWT widgets is so simplistic. In books for begining programmers, presenting examples in the context of a complete working program has value. But in books for experienced programmers, it is filler that does nothing except waste trees and bulk up the page count.
And now on to the simplistic nature of the content: Only the basic widgets are covered. And even the ones that are covered are not covered with the kind of depth they should be. The RowData class to go with the RowLayout manager is not covered at all for example. SashForm for building split panes--a very common user interface element, is not mentioned at all. Instead, the author uses a FillLayout which fixes the divider at 50%, when he should have used a SashForm. And if you want to do anything with images besides put them in a toolbar buttons, you can forget about it. The graphics package in SWT is given no coverage at all outside of changing the application icon, and putting an image in a toolbar.
This is not a horribly bad book, except for the fact that it is very misadvertised. it is not for experienced developers, but for people who have never written a GUI in their life, and people who have little experience in Java in general. If that's you, this book might help you learn how to develop basic GUI applications with SWT. But if you are an experienced developer, this book will mostly just frustrate you with its very basic coverage, patronizing style, and duplicate code listings.