Customer Reviews


93 Reviews
5 star:
 (75)
4 star:
 (10)
3 star:
 (5)
2 star:
 (2)
1 star:
 (1)
 
 
 
 
 
Average Customer Review
Share your thoughts with other customers
Create your own review
 
 

The most helpful favorable review
The most helpful critical review


58 of 60 people found the following review helpful
5.0 out of 5 stars Third Edition: Improving an already great book
How do you improve a book that has been known as a "bible" in the C++ community for years? As Scott mentions at the beginning of the text, he almost threw everything out, and started from scratch. When I first say the book, I thought that there are five new items that were added to the book, but I couldn't be more wrong. As you might have guessed, C++ has gone thru a...
Published on May 27, 2005 by Amazon Customer

versus
72 of 77 people found the following review helpful
3.0 out of 5 stars Great book but Kindle edition doesn't cut it
I really wanted to purchase this book for my Kindle 2 so I could reference it wherever I go. Unfortunately, the conversion to Kindle format made it much more difficult to read, mostly due to the fact that the code samples do not format correctly on the device. I imagine that the book needs to be re-converted to make use of the fixed-width font capabilities that are...
Published on March 8, 2009 by C S Jones


‹ Previous | 1 210 | Next ›
Most Helpful First | Newest First

58 of 60 people found the following review helpful
5.0 out of 5 stars Third Edition: Improving an already great book, May 27, 2005
By 
Amazon Customer (Old Bethpage, NY United States) - See all my reviews
This review is from: Effective C++: 55 Specific Ways to Improve Your Programs and Designs (3rd Edition) (Paperback)
How do you improve a book that has been known as a "bible" in the C++ community for years? As Scott mentions at the beginning of the text, he almost threw everything out, and started from scratch. When I first say the book, I thought that there are five new items that were added to the book, but I couldn't be more wrong. As you might have guessed, C++ has gone thru a number of significant changes over the past decade, and the third edition of this book is updated to take advantage of the new editions to the C++ standard. In reality, almost every item in this book has gone thru a re-write. Many have been consolidated and new chapters, topics and many new items have been added. A few items that did not make sense anymore like items 2, 3 and 4 in the second edition are removed from this third edition.

Scott breaks down the c++ language into 4 subparts:

* The old C subsystem. Before all these advanced programming languages such as Java and .NET came, C was the language of choice. C++ is "translated" to C first, and then complied and linked to an executable.

* OO C++, which is C with Classes. This is where the concept of Object Orientation in C++ started. Even though this concept was very much new a decade ago, it is very much part of a programmer's vocabulary.

* Template C++, which is the newest edition to the C++ standard and it brings with it the concept of Template Metaprogramming. This concept is very much new, and this book has dedicated a whole chapter around templates, and template metaprogramming.

* STL, which is the C++ Standard Template Library. Again, STL was a new concept a few years back, but it is very much an established notion in C++.

Scott has taken a new approach to this book and has covered all four of these subparts. He has a book dedicated to STL, but he is using STL notions and "language" throughout this book. The chances are that the reader is already familiar with other languages such as Java and .Net, so the text covers area where these two languages differ with C++, especially in the area of inheritance and polymorphism. But not everything has changed. Topics such as,"Explicitly disallow the use of Compiler Generated functions you do not want," will never get old or outdated.

New chapters cover topics such as C++ Template and Generic Programming, Resource Allocation and topics that cover the latest C++ standard and additions, including the TR1 (Technical Report 1). "new and delete" have been separated into their own chapter, and the author goes into great depth demonstrating to the reader the various ways that these two operators can be modified, and why.

Exceptions and programming in light of exceptions is also a very new concept in C++. The previous versions on this text did not touch on exceptions all that much, but the author has spread the use of exceptions throughout the text, with a number of items dedicated explicitly to exceptions and exceptions handling.

The updated items, new topics and chapters and a new look and feel of the text with color coded examples make this book a joy to for C++ programmer to read.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


72 of 77 people found the following review helpful
3.0 out of 5 stars Great book but Kindle edition doesn't cut it, March 8, 2009
By 
C S Jones (Portland, OR USA) - See all my reviews
Verified Purchase(What's this?)
I really wanted to purchase this book for my Kindle 2 so I could reference it wherever I go. Unfortunately, the conversion to Kindle format made it much more difficult to read, mostly due to the fact that the code samples do not format correctly on the device. I imagine that the book needs to be re-converted to make use of the fixed-width font capabilities that are present in the newer Kindle software. Until they fix the formatting for Kindle, the print version is the only one I would recommend.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


28 of 29 people found the following review helpful
5.0 out of 5 stars Age brings wisdom..., June 15, 2005
This review is from: Effective C++: 55 Specific Ways to Improve Your Programs and Designs (3rd Edition) (Paperback)
"Effective C++: 55 Specific Ways to Improve Your Programs and Designs" recently came out in its 3rd edition. The first came out in 1991, making this line of book revisions positively ancient in high tech terms. But you should consider the elapsed 14 years an investment in wisdom, not obsolescence. Unlike the 2nd edition, this is a complete rewrite from the ground up. More than that, Scott Meyers begins from first principles, reevaluating what topics are most important to the programmers of 2005.

This was a very strategic and insightful move. Not only has the language evolved over that time, but the audience has too. In the first edition, the likely readers were coming from languages like C. Now the likely readers cross over from some other object-orient language, like Java or C#. Keep in mind

that the author focuses strictly on standard C++; he does not address anything that is platform-specific.

Like its predecessors, the items can be read stand-alone, and he does cross reference related items. The 55 items are grouped into the following chapters:

Chapter 1: Accustoming Yourself to C++

Chapter 2: Constructors, Destructors, and Assignment Operators

Chapter 3: Resource Management

Chapter 4: Designs and Declarations

Chapter 5: Inheritance

Chapter 6: Implementations and Object-Oriented Design

Chapter 7: Templates and Generic Programming

Chapter 8: Customizing new and delete

Chapter 9: Miscellany

I would hate to have to learn the lessons in this book by hard experience. It would be costly in time and unfortunately might even cover more than one employment span.

Most decisions that are undertaken by developers should consider ROI (return on investment), which always is measured in terms of time. For developers considering professional education material like this, the measure should be in terms of how many mistakes could be avoided before the book pays for itself. In this case, the ROI is probably less than 2 defects.

If your shelfspace for C++ books has only a few slots, this book should be in your "must haves." The book's ISBN is 0-321-33487-6 and it retails for $45 US. Scott's web site is at [...] and the errata for this book is [...]
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


8 of 8 people found the following review helpful
5.0 out of 5 stars Thank you Mr. Meyers!, May 30, 2005
This review is from: Effective C++: 55 Specific Ways to Improve Your Programs and Designs (3rd Edition) (Paperback)
Recently, I decided to make my programming language of choice to be C++ (although I use VB, C#, C++ and occasionally java).
I bought Effective C++ Third Edition & Effective STL (both by Mr. Meyers). The author knows all that he is talking about and he has generously clarified things like a personal tutor. I wish that I had a chance to read these books some years ago. I think I have acquired something which can help me build good programs and my professional confidence.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


6 of 6 people found the following review helpful
5.0 out of 5 stars Effective and Essential C++ Reading, October 26, 2005
This review is from: Effective C++: 55 Specific Ways to Improve Your Programs and Designs (3rd Edition) (Paperback)
This book is well written. Meyers explains many C++ details that are either badly explained or not explained at all in other books. His focus is always on productive and practical techniques and he doesn't sit on the fence: he gives you the benefit of clearly well thought out advice. If you want to understand C++ better and if you want to understand the design trade offs, for example, between inheritance, aggregation, and templates, this is a good place to look for help. This is one of those rare books that you will want to read more than once---as well as to refer to regularly. Highly recommended.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


4 of 4 people found the following review helpful
5.0 out of 5 stars Useful & Easy To Read, June 16, 2006
This review is from: Effective C++: 55 Specific Ways to Improve Your Programs and Designs (3rd Edition) (Paperback)
One of the more practical books I've read on c++.

Easy to read and gets right to the point.

The book is divided into short chapters that covers some of the less-known subjects of c++, such as explicit constructors, virtual destructors, smart pointers, slicing issues, c++ castings & inlines, compilation dependancies, private inheritance, virtual multiple inheritance, templates meta-programming, placement new overloading and STL' TR1.

I've been programming c++ for more than 5 years and still managed to learn new things from reading it, so I would recommand to anyone giving it a try.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


4 of 4 people found the following review helpful
5.0 out of 5 stars Fantastic book for intermediate level C++ programmers, November 26, 2011
Verified Purchase(What's this?)
This review is from: Effective C++: 55 Specific Ways to Improve Your Programs and Designs (3rd Edition) (Paperback)
I used this book as my primary source to transition from programming at College in C (where most programs are several thousand lines at most) to programming professionally in C++ (where you often have to manage anywhere from tens of thousands to millions of lines of code, most of which were not written by you). It does a fantastic job of giving you tips about the proper way to engineer your software so that it's not just correct, but also maintainable and self-documenting. You'll also find reading other people's code much easier after going through this book, since the paradigms that Mr. Meyers describes aren't just for academic interest -- they're actually being used out there in the wild.

Each of the 55 "Tips" are quite short and fairly self-contained, and the Author's friendly style makes this book an extremely easy read to boot. If you don't know why you'd bother to use a "const", why you'd use the more complicated C++ casts when the C-style casts work just fine, or why you would ever declare a constructor to be private, then it's time to pick up this book. Even if you do know all of these things, this book will almost certainly teach you something, or at least remind you of a few techniques. This should be everyone's second book on C/C++. Highly recommended.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


4 of 4 people found the following review helpful
5.0 out of 5 stars Kindle Edition formatting acceptable, but not great, June 5, 2008
Verified Purchase(What's this?)
This review is from: Effective C++: 55 Specific Ways to Improve Your Programs and Designs (3rd Edition) (Paperback)
This book is fantastic, I own three editions.

But the Kindle edition is a pale shadow of the print edition. Purchase the printed edition first, use the Kindle edition only as a portable reference. Expect your reading speed to be much slower on the Kindle edition than in the print edition.

The Kindle display is too narrow for the code, causing lines to wrap at inconvenient places. Code is mostly readable, but the line wraps render the code less readable than the print edition.

The Kindle edition uses the same serifed font for both code and prose, all in black. The printed edition uses a serif font for prose, and uses a sans-serif font to differentiate code. The print edition uses color to identifies important code.

Comparing the two editions gives you deeper appreciation for the art of typesetting.

Photos comparing Kindle and printed formatting at
[...]

The Scott Meyers books were *the* reason I bought a Kindle: these books were in my backpack on the day I ordered my Kindle. "I could carry a 10oz Kindle instead of a stack of books? Sold!" Even with the Kindle's limited formatting capabilities, I'm glad to finally have them in a Kindle edition.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


4 of 4 people found the following review helpful
3.0 out of 5 stars Good but not great, January 18, 2012
This review is from: Effective C++: 55 Specific Ways to Improve Your Programs and Designs (3rd Edition) (Paperback)
This book does give you some specific ideas and ways to write better C++ code. But I'd read a section a couple times and have to talk to a friend to really figure out what they meant and how to do it. So overall I found the suggestions very good, but it would have been nicer if the explanations and code samples had been clearer.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


13 of 17 people found the following review helpful
2.0 out of 5 stars important subjects explained with the most complicated examples, December 7, 2011
Verified Purchase(What's this?)
This review is from: Effective C++: 55 Specific Ways to Improve Your Programs and Designs (3rd Edition) (Paperback)
You spend most of your time trying to understand his examples than to understand the concepts. Every concept could have been explained by more simple examples that are easy to understand. It takes too much time to understand the examples you get bored and skip that subject. For example, "traits can be used in templates to be able to use if statements on types at compile time." The way he explains this simple concept is through advance operator on some STL iterators, in order to explain his example he spends pages explaining how iterators behave until finally. he makes his point. Why is it necessary to talk about iterators so much? find another example where this is not necessary.
In summary, good concepts are mentioned but they are explained in a bad way where you spend more time trying to understand the examples and less time thinking about the concepts. When you are done reading you don't remember any concepts, because you used all your brain power on examples.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


‹ Previous | 1 210 | Next ›
Most Helpful First | Newest First

Details

Effective C++: 55 Specific Ways to Improve Your Programs and Designs (3rd Edition)
$49.99 $38.54
In Stock
Add to cart Add to wishlist
Search these reviews only
Rate and Discover Movies
Send us feedback How can we make Amazon Customer Reviews better for you? Let us know here.