After the introduction the reader gets detailed information about the requirements and recommended tools a developer should use in order to work with qooxdoo. Since the framework is building upon a python based command line tool chain, users of Windows get a tutorial how to install ActivePython before setting up the first own application. After that more basic information is following, this time with JSON and Remote Procedure Calls (RPC). In my opinion it’s a little bit too early at that stage of development to talk about client server communications, but well, now it’s here. Now we learn how to do rpc calls. The chapter closes with an explanation about how error handling in qooxdoo works and should be considered in applications.
The next chapter is very important, since it covers the core concepts of qooxdoo. There is a lot of stuff in there which becomes very handy the moment you know about it. I would’nt have wasted hours of work on my first project if Ihad the opportunity of a book giving my some hints about the core concepts which in some ways are similar to Java and in some other cases are…not. You get information about Classes and Objects in qooxdoo, their properties and events, statics, and lots of more stuff. Inheritance, singletons, abstract classes, everything you wish for.
Ok some people may wish for the boring part to end. Now it gets more visual, with the introduction of layouts. The next chapter gives the reader an inside view from the root application to the more detailed widgets, including menus and toolbar widgets. It gets more in detail in the following chapter, which included a description of the most important GUI widgets that ship with the framework.
Almost every GUI framework needs to have some stuff with forms and validation, that’s the next chapter for the reader. I won’t go to much into the details here.
There is a chapter about themes as well, but before that we get presented with a slight detour to testing and debugging applications with unit tests and profiling methods. Nice to know for developers, but it feels ill-placed between widgets and themes. Would have placed it at the end of the book to the performance chapter, which is one the most valuable resources for those who work with qooxdoo for a while and wonder why applications tend to get slower the longer they are being used.
Resuming my reading through the book, I think it is a valuable beginners guide to qooxdoo and includes some valuable resources for experienced qooxdoo users. The layout of the book is good and easy to read, though some reordering of chapters and/or content should be done. There are not too many long speech-like texts, instead a lot of listed facts and screenshots of important steps are included. After each chapter there is a little quiz, but that’s almost mandatory for beginner books today. All in all I can recommend the book for people who are interested in learning qooxdoo.