How to read this book

Like ancient Gaul, this book is divided in three parts. The first part details the installation of PyQt and of BlackAdder. Then the book takes you through a tour of the interface of BlackAdder. You might want to read this part in order. There is also a small chapter that introduces programming with Python, in case you are not already familiar with the language.

The second part deals with the concepts behind Python and PyQt. You don't need to read this part in order, but the chapters will give you a solid feel for the lay of the land, and will enable you to find your way in the PyQt or Qt class documentation (which is copious and excellent). Also, if you run into inexplicable behavior, you might want to consult, for instance, the chapter on objects and references. The order of the chapters doesn't matter a whole lot.

Part three is where the real fun starts. From humble, but solid, beginnings, we will build, chapter by chapter, a very real application. This part is probably best read in order, but there are occasional excursional chapters that you might want to read before anything else, such as the chapter on unit testing.

Finally, there are the appendices. Appendix A is useful if you don't know anything about C++, but still want to read the C++-based Qt documentation. The second appendix, Appendix C, tells you how to wrap your own C++ extension libraries — possibly based on Qt — using sip, the same tool that is used to create PyQt. Appendix B deals with PyQwt and NumPy, an extension library for plotting and graphic.