Product Details
Would you like to update product info or give feedback on images?
|
In particular, the sections that purport to emphasize good user interface design are, unfortunately, academic and superficial -- almost as if the author once read a book on user interface design and regurgitates what he remembers. The history of the graphical interface presented in the first chapter is a wasted opportunity because it is simply a chronology. It completely fails to highlight the important lessons that were learned, extract the key points and teach the reader something. Anyone who spent an afternoon searching the web could have written the same thing -- not what I want to pay for in a book.
This book is strongest in providing details of the available GUI elements (i.e. describing the API). But then the KDE API is well documented anyway -- and the book simply re-hashes that (public) material. There is very little added value here.
The author clearly considers his personal development techniques to be that added value. Unfortunately, these are poorly conceived and not pragmatic for anything other than small amateur applications. A good example is the use of XML to define a user interface. While XML is all the rage right now, this approach means that building a GUI becomes a laborious trial-and-error process with much manual editing of XML before you get the right result. The XML then becomes a bear to maintain. Worse, it make it very hard for the application to dynamically adapt the GUI based on calculations or data entered by the user. This is critical for anything other than the simplest application. It also makes re-use of parts dialog boxes or forms within the application almost impossible, because there is no modularity.
The final straw is the author's prose -- rambling and irrelevant, with an overall tone of smug authority "talking down" to the reader. For example, in the first chapter, the author talks disapprovingly of end users who expect a graphical user interface to be easy to use (because this is hard to program)!
There are far better books on application development and user interface design. Buy one of those, and get your KDE API documentation from the KDE developer community sites.
Still, there's a lot of stones left unturned. I thought the discussion of the KDE architecture was pretty minimal. There's no real coverage of the aRts multimedia framework in KDE 2.0, or of using OpenGL. And, in general, the coverage seems to be less thorough than in the book KDE 2.0 Development, though possibly friendlier to novices on topics like working with the IDE.
Also note that there's no coverage of working with databases, though that's pretty understandable since KDE doesn't offer tools to do this. To work with databases, you're looking at using some other API, such as a database vendor's.
Overall, this book could be useful to some people. This book covers things at a level that I would expect to appeal to people like VB or MFC programmers who wanted to learn Linux. It would also be useful to people looking to develop GUIs that aren't especially demanding, whether simple applications or simple interfaces that cover complex inner workings. Still, it didn't really meet my needs (partially because I'm looking to do audio programming) so I can't give it more than a qualified recommendation.
In particular, the sections that purport to emphasize good user interface design are, unfortunately, academic and superficial -- almost as if the author once read a book on user interface design and regurgitates what he remembers. The history of the graphical interface presented in the first chapter is a wasted opportunity because it is simply a chronology. It completely fails to highlight the important lessons that were learned, extract the key points and teach the reader something. Anyone who spent an afternoon searching the web could have written the same thing -- not what I want to pay for in a book.
This book is strongest in providing details of the available GUI elements (i.e. describing the API). But then the KDE API is well documented anyway -- and the book simply re-hashes that (public) material. There is very little added value here.
The author clearly considers his personal development techniques to be that added value. Unfortunately, these are poorly conceived and not pragmatic for anything other than small amateur applications. A good example is the use of XML to define a user interface. While XML is all the rage right now, this approach means that building a GUI becomes a laborious trial-and-error process with much manual editing of XML before you get the right result. The XML then becomes a bear to maintain. Worse, it make it very hard for the application to dynamically adapt the GUI based on calculations or data entered by the user. This is critical for anything other than the simplest application. It also makes re-use of parts dialog boxes or forms within the application almost impossible, because there is no modularity.
The final straw is the author's prose -- rambling and irrelevant, with an overall tone of smug authority "talking down" to the reader. For example, in the first chapter, the author talks disapprovingly of end users who expect a graphical user interface to be easy to use (because this is hard to program)!
There are far better books on application development and user interface design. Buy one of those, and get your KDE API documentation from the KDE developer community sites.