Programming: Principles and Practice Using C++ 2nd Edition, Kindle Edition
Use the Amazon App to scan ISBNs and compare prices.
- Highlight, take notes, and search in the book
- Length: 1312 pages
- Due to its large file size, this book may take longer to download
See the Best Books of the Month
Looking for something great to read? Browse our editors' picks for the best books of the month in fiction, nonfiction, mysteries, children's books, and much more.
Enter your mobile number or email address below and we'll send you a link to download the free Kindle App. Then you can start reading Kindle books on your smartphone, tablet, or computer - no Kindle device required.
To get the free app, enter your mobile phone number.
What other items do customers buy after viewing this item?
Would you like to tell us about a lower price?
Top customer reviews
There was a problem filtering reviews right now. Please try again later.
I think this is an ideal book for Programming I class as well.
It covered the topic well organized and detailed for someone to follow them in a classroom or by themselves. Notice that some people will prefer C++ Primer.
If you have C++ The Programming language, you will not gain anything major with this book. If you already know C++ and have solid concepts about programming, this is not a book for you.
My review is for someone that will start programming or will start c++. for this, I give the book 5 stars.
The material was designed with an instructor-led course in mind. I wish I'd had the opportunity to work through it that way, especially with other students.
If you can't have that either, then just be warned that you'll need to follow the recommendations in the "Notes to the Reader" section. Pace yourself, read closely, and be prepared to re-read. Do the exercises... maybe not all of the exercises, but certainly any that look like they'll be a challenge. It plainly says that they chose to "understate" rather than "hype". I found a number of places that I wish they'd hyped a bit more. If you skim this text, you will miss important things.
This book uses an approach that manages to be both practical and unique. Most programming books have you following examples that you'll probably never use. Since every programmer will go on to do different things, that's almost unavoidable. So, this book does the same, but in a way that the lessons stick.
After the language basics, they have you drawing a lot of 2D shapes. Even if you'll never do that, work through the chapters anyway. You'll learn lots of about inheritance and substitution, among other things.
After that, they have you build a template class that mimics the standard vector. However, you don't just write final code. You follow the same logical progression that a real world program often takes. You start off by building enough to solve the problem at hand. Then, you refine the code to solve additional problems, including some that are caused by your early solutions. You wind up with something that looks very much like the official vector. The best part is that you understand why it looks that way and what it does. Even though you'll probably never (and probably shouldn't) build your own vector, you walk away with a clear understanding of a gigantic stack of concepts -- all based on a real-world challenge.
I don't have any meaningful negative criticism, but the book is not quite perfect. I understand not wanting to "hype" language features, but I felt that some things were unnecessarily muted. For instance, I feel like lots of people don't really understand the way that memory works or the dangers of not carefully allocating/freeing it. The material covers that, but introduces the related problems quite a bit later than I would expect and with a subdued tone. A close reading of the text mitigates that concern. Having an instructor to show you what to draw red boxes around would help a lot, as well.
However I should mention that although this book is designed for beginners I would not hand this book to someone who is completely computer illiterate or ill-informed of what programming truly is. This is what I would deem to be collegiate level reading.
Not only does this book have the advantage of being written by the potentate of code himself. Mr Stroustrup, co-authored this book with a 20 year veteran (literally & figuratively) teacher Lawrence Petersen. This partnership makes the book not just authoritatively informational, but also easily and enjoyably readable. Each concept builds on the previous in a gentle flowing manner. So if you take the time to run the actual source samples, and do the numerous drills, and excercises between these covers you will quickly (and relatively easily) be programming proficiently in C++.
After reading this book, I am a more proficient and better coder. I wish this book had been available twenty years ago! Yes, this is a college text book for programming. However, the intelligent, quality of authoring makes it a geniunely pleasant read. Anyone who works in IT/IS or even just uses a computer professionally will benefit from reading this book. Someone who genuinely wishes to learn how to program (even a language other than C++), should consider beginning with this book!