Applied C++: Techniques for Building Better Software
||Author: Philip Romanik, Amy Muntz|
List Price: $39.99
Our Price: Click to see the latest and low price
Publisher: Addison-Wesley Pub Co (02 May, 2003)
Sales Rank: 307,274
Average Customer Rating: 3.88 out of 5
Customer ReviewsRating: 4 out of 5
Good intro to 2D image processing, very nice framework
As a programmer who had never done any image processing before, this book helped raise my knowledge from zero to a reasonably good understanding of 2D image processing, and provided me with a very useful framework that I am using everyday in my job.
I feel that the book also does a good job demonstrating template techniques, and provides a good overall SW development process to follow.
The authors have been very responsive to questions and problems, which I greatly appreciate.
The only thing I really didn't like was the lack of makefiles for the non-template code. I would have liked to have a makefile that creates a library automatically. I ended up doing it myself, which frankly wasn't all that difficult.
Rating: 5 out of 5
a solid C++ software development book
There are many books about C++, and there are many books about software development. This book is one of the best I've seen at combining the two topics. The authors are obviously real-world developers because they offer real-world solutions and approaches, unlike the authors of many development-oriented books who apparently live in ideal worlds where every project goes perfectly.
C++ continues to be one of the most popular programming languages ever, and I highly recommend this book not only to any developer who writes C++ applications for a living, but also to team leaders and architects who want to make sure their teams are writing the best code possible. I can say based on years of experience that the techniques offered in this book are critically important for real-world, robust, production-quality C++ applications.
Rating: 2 out of 5
Nothing really new in this book
I was a little bit disppointed with this book, especially when I look at other books in this serie.
Although I cannot find any point totally wrong in this book, I cannot find anything that I did not already knew. I believe that this book is best suited for people rather new to the profession, or maybe even more to people who only use C++ as a better C, and would like to start using C++ specific features.
Maybe in this case, they can find in one book what usually requires at least three books. But that would not take them as far as those three books would do.
I think my biggest disappointment with this book, is that when the authors discuss about their design, they explain how it work in details, sometime they even suggest why they choose this possibility, but they almost never review other possibilities to weight to pro and con of each one.
The text is sometime a little bit tedious to read (the kind of repetition that one would expect in documentation where everything has to be detailled, but not in book).
Finally, there are some technical points where I disagree (or where I beleive a better solution exists, and should at least be evoqued):
- The use of prefix instead of namespace, making code more difficult to read, and I believe even more innapropriate in a book than in real life
- Not a word about the template techniques that might unroll the loops they tediously unroll manually
- The use of trait associated with pixel type could probably ease the use of the library (for instance, specifying the type to be used by default when adding two pixels)
- I think it is rather surprising the way the authors complain about a change in the standard from a well defined behaviour to a buggy one that broke their previous design on purpose (you may think I am cynical, but they _complain_ about this special point at least three times in the book (for their function add2), but never explain why the standard is written as it is)
· C++ Templates: The Complete Guide
· Modern C++ Design: Generic Programming and Design Patterns Applied
· The ACE Programmer's Guide: Practical Design Patterns for Network and Systems Programming
· C++ Gotchas: Avoiding Common Problems in Coding and Design
· Parallel and Distributed Programming Using C++