Most Helpful Customer Reviews
28 of 29 people found the following review helpful:
5.0 out of 5 stars
Excellent Coverage, but examples can be rather bland..., July 12, 2006
This review is from: Sams Teach Yourself C++ in 21 Days (5th Edition) (Paperback)
I've always been rather hesitant to read programming books with titles that imply a sacrifice of depth for gained ease in learning, but this book is a very well done and complete treatment of the fundamentals of the C++ language.
It assumes no previous knowledge -- just a willingness to learn. It begins with "Hello, World", the classic example first introduced in the K&R C book, and then continues for the next few "days" to cover the funamental C aspects such as basic I/O, variables, functions, branching, data types, and operators.
After that preliminary information is covered, the authors begin showing basic class useage -- the general form of a class, constructors, destructors, data members, and member functions.
In the final "day" of the "week", control statements (for, do...while, switch, etc.) are given a good, and thorough treatment.
The next "week" moves on to more advanced concepts such as pointers, reference variables, function overloading, inheritance, and polymorphism. By the end of this week, you will be pretty proficient, and probably ready to implement more substantial projects, however, the book still covers more.
In the last week, other, more advanced, concepts are introduced such as friend functions, file manipulation, low level bit manipulation, and a lot more to help you become a master of this beast of a language.
This book also goes through each and every example program and provides a thorough analysis -- so you're never left in the dark as to what a program is doing or how.
This work does have some shortcomings, but they're not that significant. Yes, some of the example programs are extremely boring and you're left thinking whether you should bother entering and compiling them. Sometimes explanations are offered for the most trivial of concepts in programs, but overall, it's a great book at a great price.
In short, if you want to learn C++ and you want to learn it thoroughly, then this is your book!
Help other customers find the most helpful reviews
Was this review helpful to you? Yes
No
15 of 16 people found the following review helpful:
3.0 out of 5 stars
An interesting book overall, September 2, 2005
This review is from: Sams Teach Yourself C++ in 21 Days (5th Edition) (Paperback)
Teach Yourself C++ in 21 days (Sams) is a quite good candidate for anyone looking for an introductory book on C++. It not only represents a smooth introduction to the language basics, but also offers valuable advice on good programming and design practices. I especially liked the Q&A section at the end of each chapter.
What differentiates it from similar introductory C++ books is the way the material is laid out. After covering the langugage syntax the authors try to put forward what they consider easier to understand. This makes it easier for the reader, although the book cannot be used as a reference.
There are numerous code examples, which are compact, well structured and easy to follow and understand.
However, there are a few things that I believe could definetely be improved. First and foremost templates and the STL are not covered until Day 19, which means that all the code samples until then use the old C libraries. My opinion is that since templates represent a whole new programming paradigm, they have to be introduced much earlier, although they can be a bit difficult to grasp. Not only that, but the code uses deprecated headers mixed with standard library headers (e.g. 13.12 - p.435, 13.7 - p.423); it is more natural to use <cstring> than <string.h> at least.
Also assertions should definetely be introduced earlier and used in the code samples.The custom string class bound checking should report error (assert) when out of bounds and not return the last element! (13.14 - p.437).
Moreover I consider function pointers a not so important topic to be covered on Day 15. I would prefer to see it in an Appendix, near deprecated features really. Chapter titles should probably be revised too. E.g. Day 16 is named "Advanced Inheritance", but aggregation which is covered there is not actually inheritance. The chapter would be better named "Other class relationships", or even better "Aggregation" and cover only aggregation.
I also believe it is important to pair each new() with a delete (e.g. 12.10 - p.398) even though the program ends. This is a very important programming habit that someone should get used to very early.
Overall I believe that this book, although it has some weak points, has much to offer to someone that starts learning C++.
Help other customers find the most helpful reviews
Was this review helpful to you? Yes
No
11 of 12 people found the following review helpful:
4.0 out of 5 stars
Complete in content..., December 11, 2005
This review is from: Sams Teach Yourself C++ in 21 Days (5th Edition) (Paperback)
The book deals with C++ and related nuances exhaustively. For a beginner, this book can also make a good reference if all he wishes to read about is specific language related details.
The authors have taken care to be elaborate, and have presented concepts such as pointers, constants, and streams lucidly - to name a few.
I would like to see a re-arrangement of content in the next version. For example: the chapter on OOAD comes too early - even before Inheritance (and Polymorphism) in C++ has been introduced. Similarly, templates are discussed in detail before macros have been introduced. Some exercises that are very lengthy can be broken into smaller /simpler ones.
My advise to a beginner would be to focus on the content he is able to grasp, and keep the rest for another reading. Yes, this is a book that can be read more than once as it deals with topics that are a beginner's level and beyond (which in my opinion is good).
Help other customers find the most helpful reviews
Was this review helpful to you? Yes
No
|