An Introduction to Design Patterns in C++ With Qt 4 - Paul Ezust (Prentice Hall)