Updates

Latest Tweet



What's New?

Check out for latest innovation, a computer based training video collection


Like this Page

Applied C++: Practical Techniques for Building Better Software Review by Andrew Hall

Great idea, terrible execution

A true disappointment. Other books in the series (Sutter, Alexandrescu, Koenig & Moo) have been instant classics, but I get the feeling that Stroustrup didn't really read this one (he's the "series editor", not the "book editor", and not mentioned in the acknowledgements). If he had, I doubt he'd let the following gems see the light of print:

-- "It is easy to spend too much time researching the problem in hopes of finding the most efficient STL component. For example, we could have also chosen to use std::set, as this matches the requirements of our object very closely. ...If you have not used many STL components, you will soon discover that you end up using only a small subset of objects..." (p. 107) In the context, the authors have just selected a std::map whose value type they plan to ignore completely. The C++ standard library is TINY compared to most other currently popular languages, and much more consistent. Wouldn't it be more worthwhile to take a second to learn about std::set just this once, so you'd remember it next time?

--"Namespaces were added to the language to prevent name collisions, but aside from their use in the standard C++ library, we have seen little use of them elsewhere." (p.74) Then, they go on to advocate prefixing all class names, a la "apString". Why not just make an "ap" namespace, if you realize that that's what namespaces are for? Maybe they haven't seen any use of namespaces because they systematically avoid them out of sheer stubbornness?

The book is filled with other inane advice displayed in special boxes: "If you decide to graphically depict your object relationships, take advantage of both axes to represent them." Darn, why didn't I realize this sheet of paper was two dimensional? Glad I bought the book!

The only remotely redeeming factor is the stuff on image processing, but any two-bit text devoted to image processing would be better. Heck, just about anything you could dig up on Google would be just as good, I imagine.

Finally, the included CD stinks. After all that, what you get is essentially a makefile with some lousy code--not even a dummy application that lets you see it in action.

I wish I could give it 0 stars, but it doesn't seem to be possible. Don't waste your money--almost any other AW book on C++ would be a better choice.