Comprehensiveness rating: 4 read less
The book covers all the major topics of C++ up to the C++98 standard. It does have a nice index and table of contents that allows you to find a topic quickly and move to the module quickly. I did not see a glossary.
Accuracy rating: 4
The book is accurate, albeit dated.
Relevance/Longevity rating: 2
The content is dated and this is one of the major drawbacks. I teach in an older style and I was glad to see that it showed an older model; however it hasn't been updated in a while. The online version was published in 2013, but I think the original was published in the late 90s. I was looking for the copyright date, but I couldn't find it when I was typing this.
The reading list is several editions out of date and the book makes no mention of any of the C++11 or C++14 standards. The changes made to C++ in those standard changes really need to be included in a modern C++ text or it is seriously out of date.
Clarity rating: 5
I like the book's writing style and I find it very clear.
Consistency rating: 5
The book is very consistent. It follows a good style of writing and is easy to follow.
Modularity rating: 4
The book is modular but it's hard to assign the modules out of order due to the fact that the nature of a programming text will build off previous modules. This is extremely typical of all programming texts.
Organization/Structure/Flow rating: 3
I disagree with the flow of topics. I understand why they have chosen to introduce the topics in the way they have but I don't think this is the best way. I prefer to forestall an in-depth discussion of functions until after loops and selection. Selection and loops come very late in the topic list in my opinion.
Interface rating: 5
The interface is clean, clear and easy to use.
Grammatical Errors rating: 5
The book has very good grammar.
Cultural Relevance rating: 5
The book is not culturally insensitive.
The book is okay. I don't think I would use this book in my class because there are some major issues with how the examples are developed and the topic flow. Since the modules are sequential it be too hard to rearrange and keep the content clear to the students. Also the examples show the use of global variables which, in my opinion, should be avoided and I teach that in my class, so a text that shows examples using global variables would pose a major issue.
In general I feel the book needs a major revision to include more modern C++ standards, a topic flow alteration and the removal of global variables in examples.