Rating:  Summary: Don't write C++ without it! Review: After having spent several years programming in C and dabbling in C++ here and there, I felt I had a pretty good grasp of C++. However, after finishing this book, I found myself boldly corrected. The book covers answers to questions that I hadn't even realized that I should be asking. Reading C++ reference books teach you the syntax but completely hide the level of complexity as to what's really going on behind the scenes. To use a quote from the book "Saying what you mean is only half the battle. The flip side of the coin is understanding what you're saying, and it's just as important." What happens if you override a non-virtual function? What does private inheritance do and why would you want to use it? What code will the compiler automatically generate for you if you fail to do so yourself? When should you use references to objects versus the objects themselves? The list goes on and on. It covers the topics of Memory Management, Constructors & Destructors, Operator Overloading, Design & Decleration of Classes and Functions, Implementation, Inheritance and Object Oriented Design. But, most importantly, for every answer - there is a logical explanation of *why* things are the way that they are. Reading this book gave me a new appreciation for the complexity behind C++. It is not a book on syntax, so this should not be the 1st C++ book that you read -- but it should *definitely* be the 2nd! Meyers has an excellent, and amusing(!) writing style which makes the book much easier to read then you'd expect from a technical book. The concepts might still make your brain hurt if you're new to C++, but keep at it -- before you write any C++ code you need to understand what's going on behind the scenes and this book will show it to you.
Rating:  Summary: C++ has some quirks... Review: The subtitle of the book '50 specific ways to improve your programs and designs' is a pretty good summary of what this book is all about. It's is very well structured, the table of contents summarizes each point in one sentence, together with the extensive and complete index it's very easy to use as a quick reference. But thanks to Meyers clear and oftentimes amusing style of writing it's also a joy to read from cover to cover. You'd be a fool if you didn't anyways, since you'd miss out on lots of excellent source code examples and very well stated arguments for each of the tips. Some of the tips may seem obvious, like item 5 which reads: "use the same form in corresponding uses of new and delete". Others like item 1: "prefer const and inline to #define" might seem pretty alien to seasoned C programmers/preprocessor magicians or performance freaks. After reading the author's arguments for his points you'll have a hard time defending your position, though (in the unlikely case that you are still not convinced, that is). Meyers does explicitly encourage critical thinking over blind following of the rules though, and in the tradition of Donald Knuth has promised a reward for every error discovered in his work. How universally accepted these tips have become you can guess form reading the C++ newsgroups or noticing that they have been fully integrated into automatic source checking tools such as gimpel's PC-Lint. Professional programmers should know these 50 gems by heart - buy the book!
Rating:  Summary: deep and revealing Review: Like its predecessor, C++ has been about making the machine do more, more efficiently. For anyone who continues to relearn and expand their craft, this book is an excellent peek under the hood at specific parts of the language. Like all the really good C/C++ books, it may take some time to get acquainted, but it will be a long, meaningful friendship.
Rating:  Summary: Good book for improving C++ skills Review: First time i read Effective C++ was while i was in college and had gone through some programming courses. Soon after, i wasn't just satisfied with knowing what to do while porgramming, but why to do it, and how what i did affected/utilized on memory, run-time, compile time. Needless to say it was an easy but detailed read, where more is learned the more you revisit the text. Many people just getting into programming with C++ aren't exactly sure when to use pointers or references, how to write efficient constructors in classes, when to make a function public, private or friend, when to correctly use inheritance or abstract classes, things like that. Effective c++ clarifies alot of these things. One thing is for sure - for each item you read, you notice your programming errors and/or strong points, and generally move on to become a better C++ programmer. It doesn't teach you how to program (if a novice), it makes you better understand what you know or have an idea of if you've already been doing some (or alot) coding. It is also broken into sections, so you can jump right into where you think you need more clarification. Highly recommended.
Rating:  Summary: A great collection of tips Review: This book contains a list of no less that 50 pratical tips for the C++ programmer. These tips are basically just common sense, and the advanced C++ will already know the vast majority of them (he should buy the book anyway just for the ones he doesn't know). The beginning C++ programmer will feel overwhelmed by this book so for those it cannot be recommended. It is mainly targeted the intermediate C++ programmer that have learned the language but have not found experience in using it. My favorite one is the one that tell how to reduce dependencies among files. It is common sense, but I just hadn't thought about it until I read this book. As a result the build time for our company project went down significantly. That was literally *very* valuable advice. The book is extremely well written (even somewhat entertaining!) and both short and consise. I really liked this book, and I recommend any serious C++ programmer to buy it....
Rating:  Summary: Still a MUST read for C++ programmers Review: I was a little hesitant to buy this, given its publication date. Let me encourage you to buy it without delay, and the sequel, and/or the CD! All are fresh, well-written, and will help you learn the language or master it. They are just as applicable today as they were the date of publication.
Rating:  Summary: My source for those special points of emphasis Review: There are many different criticisms logged against C++, with varying values of validity. However, it is the most widely used Object-Oriented language, so people are using it whether they like it or not. Therefore, the only solution is to learn how to use it efficiently. This book, written by one of the C++ masters, will provide many key pointers to smooth and tighten your code. As someone who (re)trains professional programmers in C++, this reviewer finds many of the suggestions invaluable as teaching aids. When looking for that special point that I wish to make, this is one of the first sources examined. It belongs in the library of every organization that does any work on C++. Published in Journal of Recreational Mathematics, reprinted with permission.
Rating:  Summary: If you can only have one c++ book, get this one Review: Everything has been said about this book. It's simple, well structured, and probably the best thing it has is that it doesn't teach you how to code in C++ (that's up to you); it goes through the common mistakes everyone makes (specially professionals), and tells you how to avoid them. I've been using C++ for over 15 years now, and I still go through this book once in a while. I, like others, distrust colleagues that don't know about this book/author. In fact, every time I interview candidates for jobs I ask for a must-have list of books; not knowing about this one is a definite no. As the title of my review says, if you can only buy one C++ book (apart from Stroustrup's), get this one.
Rating:  Summary: Good book, worth reading Review: I liked this book a lot. It is something you could finish reading in a day or two and would help you more than the time you spent reading it. The 50 items were written to help you improve your overall understanding of the way C++ was meant to be coded, and it does succeeds in doing so. Some topics in this book may come off as being rather obvious but for the most part it won't make you worse at what you do, it'll only make you better.
Rating:  Summary: C++ developer must read this book. Review: If you're C++ developer, you should not miss this book. Before I read this book, I was reading the Scott articles on Internet. Although the explanation was not as detail ad the book, it gave some good start. Reading this book, I finally knew a little more about the memory leak in C++. As such, I strongly recommend C++ developer or programmer read this book. I have not done so, I should try to avoid using C++. Experience C++ developers or programmers may not be able to point out the simple programming error in this books or Scott's Internet articles.
|