The material in the book is about evenly divided between C and C++. Each section dispenses general design and programming philosophy, followed by more specific programming information (about specific language features). The advice about general programming and design is the best thing in a very good book; the rules are relevant to any programming language, are sensible, and have enduring value: "If you can't say it in English, you can't say it in C/C++." "A problem must be thought through before it can be solved."
Many of the tips in this book fall into the areas of "programming style" and "subtle interactions." Holub suspects that many programmers are out there writing buggy C++ code: Either they're using language features they don't really understand or they don't take the time to do a real object-oriented design. This puts them in danger of writing "unmaintainable gobbledygook." He doesn't believe in using C++ as a better C. If you're going to use C++, use it whole hog and do good object-oriented design. "If it's not object- oriented, use C," he says...Read more from this review. --Doug Nickerson, Dr. Dobb's Journal -- Dr. Dobb's Journal
Product Details
Would you like to update product info or give feedback on images?
|
|
Share your thoughts with other customers:
|
||||||||||||||||||||||
|
Most Helpful Customer Reviews
15 of 15 people found the following review helpful:
5.0 out of 5 stars
The naysayers ought to be shot!,
By
This review is from: Enough Rope to Shoot Yourself in the Foot: Rules for C and C++ Programming (Unix/ C S) (Paperback)
I almost passed on this book because of some of the negative reviews.
Okay, it is no Code Complete, but this book is an absolute gem. I have been programming C++ for about 6 years now (VB users be darned, it is my favorite programming language, period) and I was amazed how much I agreed with this author's advice. Yeah, I learned a lot from Scott Meyers' canonical "Effective" books. But what I like about this book is that it is a no-nonsense, in-your-face, tell-it-like-it-is book that I think is essential for those wet-behind-the-ears C++ programmers (or those whiners who claim that C++ is too hard). It will probably piss off a lot of Windows programmers as well as he is somewhat anti-Microsoft. However, I am primarily a MFC programmer and what he says about MFC (earlier editions) and Windows programming in general is absolutely correct. This book is a must for every novice C/C++ programmer. The experienced C/C++ programmers will probably tell you that they know all about this, so most of them will give it a pass. However, as a experienced C++ programmer, I think that they are making a mistake. They need to get this book on the shelf as well. At the very least they can loan it to the beginners.
8 of 9 people found the following review helpful:
5.0 out of 5 stars
Food for thought. For experienced programmers.,
By A Customer
This review is from: Enough Rope to Shoot Yourself in the Foot: Rules for C and C++ Programming (Unix/ C S) (Paperback)
I have very much enjoyed reading this book. I found Mr. Holub's style engaging and entertaining. A lot of the other reviewers disliked his style, but I liked his content & was not offended, except when he expressed negative opinions about Math grads (I'm one). The table of contents serves as a list of all his rules -- very useful. There are a few typos in the book, so you have to know C++ to catch them. E.g., on p.119 the keyword "inline" is missing in 2 spots. If you do what the book literally showed, you'd have problems. I checked. I removed the inline keyword from a function declaration in the class and the function definition in the header, below the class definition. It compiled, but when I tried linking an application to this library code, it failed to link. So this is not a book for beginners. (I found the McGraw-Hill web page for Errata, but it only had a handful of books and this book was not one of them.) But I enjoyed the book and valued his insights. Other reviewers prefer Scott Meyers. I don't like Dr. Meyers books. Meyers rambles and beats around the bush. "Code Complete" by McConnell is just way too long. Time is money. I started to read Maguire's "Writing Solid Code" and closed the book after the 1st chapter. Not impressive at all. I have "Industrial Strength C++" by Henricson and found it dry - no fun to read, but nice reference. "C++ Distilled" by Pohl is nice reference, but also not fun. Have I told you yet that I enjoyed reading Holub's book?
7 of 8 people found the following review helpful:
5.0 out of 5 stars
Highly Useful; Precisely True; Beginners Please Read This!,
By Kevin J. Rice (Mundelein, IL USA) - See all my reviews
This review is from: Enough Rope to Shoot Yourself in the Foot: Rules for C and C++ Programming (Unix/ C S) (Paperback)
I'm a 11-year mostly C programmer and I AGREE WITH EVERYTHING IN THIS BOOK. I've been a consultant for 5 years - and fixed a lot of code. Beginner programmers should read this and follow it. Computer Science and MIS degrees focus on algorithm design and efficiency and theoretical programming. THIS IS NOT THEORETICAL - this is PRACTICAL. Please, people, write code that's easy to read for the idiot that will come after you; over 50% of the cost of a progam is MAINTENANCE and if you write a simple routine that takes twice as long to execute, OH Well, unless it's a visible delay, no one cares about efficiency. Use this book as a CORPORATE STYLE GUIDE FOR C & C++ PROGRAMMING. If you follow it and write easy-to-read programs, your employer will SAVE MONEY IN MAINTENANCE. I literally agreed with everything in this book - with one exception. He poo-poos working over 8 hours/day. I disagree. True, programming is creative work and you can burn out, but I find 10 or 12 hour days highly productive because people don't interrupt me, and I try to task switch enough to give myself breaks (or stare out the window blankly to do some subconcious-problem-solving). In Short - Buy This Book, or borrow it - and save your employers money by creating simpler programs. You'll look like a star by creating something even a junior programmer can modify easily. If you're an expert C or C++ programmer, it's very worth it, too - you get another perspective on ease-of-use. I changed my mind and now will consider using const (I had only used #defines to simplify things - he made a good argument that the compiler is better than the preprocessor at catching brainfarts). Also, If you can, give it to your manager. They need to know this stuff, too.
Share your thoughts with other customers: Create your own review
|
|
Tags Customers Associate with This Product(What's this?)Click on a tag to find related items, discussions, and people.
|
|
This product's forum
Active discussions in related forums
Search Customer Discussions
|
Related forums
|