|
Effective C++: 55 Specific Ways to Improve Your Programs and Designs (3rd Edition) (Addison-Wesley Professional Computing Series) | 
enlarge | Author: Scott Meyers Publisher: Addison-Wesley Professional Category: Book
List Price: $49.99 Buy New: $33.16 You Save: $16.83 (34%)
New (44) Used (11) from $33.16
Rating: 133 reviews Sales Rank: 3668
Media: Paperback Edition: 3 Pages: 320 Number Of Items: 1 Shipping Weight (lbs): 1.7 Dimensions (in): 9.2 x 7.2 x 0.7
ISBN: 0321334876 Dewey Decimal Number: 005.133 EAN: 9780321334879
Publication Date: May 22, 2005 Availability: Usually ships in 1-2 business days
| |
| Similar Items:
|
| Editorial Reviews:
Amazon.com Review This exceptionally useful text offers Scott Myers's expertise in C++ class design and programming tips. The second edition incorporates recent advances to C++ included in the ISO standard, including namespaces and built-in template classes, and is required reading for any working C++ developer. The book opens with some hints for porting code from C to C++ and then moves on to the proper use of the new and delete operators in C++ for more robust memory management. The text then proceeds to class design, including the proper use of constructors, destructors, and overloaded operator functions for assignment within classes. (These guidelines ensure that you will create custom C++ classes that are fully functional data types, which can be copied and assigned just like built-in C++ classes.) The author also provides a handful of suggestions for general class design, including strategies for using different types of inheritance and encapsulation. Never doctrinaire and always intelligent, these guidelines can make your C++ classes more robust and easier to maintain. --Richard Dragan
Product Description Meyers provides 50 short, specific, easy-to-remember guidelines that experienced C++ programmers either almost always do or almost always avoid. These rules are each followed by an explanation of the rule's important advice on how to implement it, and are supported by actual programming examples.
|
| Customer Reviews: Read 128 more reviews...
Don't write C++ code without it... March 3, 2000 Andrew Harbick (Harrisonburg, VA) 63 out of 67 found this review helpful
From beginning to end this book is packed with information that is IMMEDIATELY applicable. For example "Always declare destructors to be virtual" otherwise you may end leaking memory when subclasses are deleted. Or hiding the implementation of a class in an "Impl" that your class just passes through to. That way, if the implementation changes, the clients of the class are protected from recompilation.Beyond the wealth of just downright practical information the oragization is fabulous. The only other technical book that has organization as good as this one is "Design Patterns" There are several chapters such as "Memory Management" that have "Items" and each item has a few paragraphs describing the motivation for why you should believe Meyers with examples to prove it. Then there are solid examples that show the implemantation of an example usage. My company gave this book out with "Design Patterns" to EVERY developer in the company, and it was probably the smartest thing I've ever seen a company do. Read it and learn a TON.
Third Edition: Improving an already great book May 27, 2005 ART SEDIGHI (Old Bethpage, NY United States) 20 out of 21 found this review helpful
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.
I dread the thought of working w. people who havent read it December 15, 2002 Felix Matathias (Manhattan, NY, USA) 5 out of 6 found this review helpful
It is really scary to be a C++ programmer and having to collaborate with people that havent read this book. It is literally like difusing a time bomb. C++, while a great language, has so many traps, especially on memory management, that makes it really easy, even for the non-beginner, to fall in. In this book you will find DEADLY snipets of code that will not raise suspicion even to seasoned programmers. This book, explains the whys and the hows of these deadly situations that any compiler will happily compile, but will create long term and very difficult to find bugs. I consider this book to be part of the formal training of any C++ programmer. I feel nervous with colleagues that have not read it. Cudos to Scott Meyers. Even though I already have the paperback, I am now ordering the CD with the 50+35 ways to improve your code. I just cant afford not having both in my laptop.
Brought forward to 2005 June 21, 2005 Jack D. Herrington (Silicon Valley, CA) 2 out of 4 found this review helpful
There is a reason why this book is in it's third edition. It's been great since the first edition. This latest edition is a complete update for the needs of the modern C++ programmer, including all of the newer elements of the STL, and commonly used extensions like Boost. The addition of color in this edition is an excellent idea. The color quickly draws your attention to the portions of the code that are important to the narrative. It's something that I wish were in more technical books. All too often the important elements of the code are obscured in all of the infrastructure code which isn't critical to the technology being discussed. A must own for any C++ programmer. And definitely worth the look if you have the first or second editions and are still actively programming C++.
Great January 7, 2001 Stephen Daly (Rehoboth Beach, De) 11 out of 11 found this review helpful
There seems to be a whole slew of books out titled " C++" and I suspect this was the first. If not, it should at least be the model.The book is set up as 50 small chapters describing particular principles. Each is useful and clearly-presented in a manner that is not daunting. I've read many C++ books, including many of the books and I have no problem proclaiming this as simply the best. Other books may cover more ground (Stroustrup's books, for example), others may be more current and others may be more advanced (I've recently been humbled by "Exceptional C++") but I think "Effective C++" is the most useful.If you're looking for a book to teach you the language, or if you're just learning the language, I'd say wait a little while before reading this book. If you've been writing code and haven't read this book, go for it. Although it's dated (pre-standard library) the concepts it covers are important ones that have not disappeared after standardization. I hope that when I write my book, "Extraterrestrial C++," I can do half as good a job.
|
|
| | |