Review of C++ for Dummies

C++ for Dummies, by Stephen Randy Davis should definitely not be your first book on C++ (note that this review is referring to a slightly older edition). Unfortunately, that tends to be the market for the For Dummies series, and one they often do well at (for instance, C For Dummies can be a great way to get started programming). Perhaps the biggest problem with this book is that it lacks a consistent vision -- a lot of the examples are haphazard (using rabbits to explain classes, for instance), and Davis doesn't do a good job of getting across the reasons for C++. In part, this isn't his fault: the reasons for using an object-oriented language typically require a bit of programming experience on real-world projects (preferably in teams). Some books can convey the complexities of real-world problems better than others (Fred Brooks's The Mythical Man-Month for instance), but it takes a gifted story teller.

Instead, this book comes off rather dry -- even with the sometimes colorful attempted examples -- and the examples are hollow, bearing little semblance to what you'd use the constructs discussed in the real world. (If you are new to C++, be prepared for a lot of analogies to animals and zoos when describing inheritance!)