Автор:Allen I. Holub
Название:Enough Rope to Shoot Yourself in the Foot
Для сайта: Bukvy.net
The title of this book describes what I consider to be the main problem with both C++ and C: the languages give you so much flexibility that, unless you're willing and able to discipline yourself, you can end up with a large body of unmaintainable gobblygook masquerading as a computer program.
You can do virtually anything with these languages, even when you don't want to. This book attempts to get a handle on this problem by presenting a collection of rules of img for program-ming in C and C++ - rules that will hopefully keep you out of trouble to begin with. Though most of the rules given here apply equally to C and C++ programming, I've included a lot of material that is relevant only in the C++ world, concentrated into the final section whenever possible. If you're programming in C only, just ignore the C++ stuff that found its way into earlier sections. I've been programming professionally since about 1979, and the rules in this book are the ones that I use daily. I make no claims that these rules are definitive or that they're even "correct." I can say, however, that they've served me pretty well over time. Though this book is not a "traps-and-pitfalls" book, many of the rules will keep you out of the sort of trouble that "traps-and-pitfalls" books discuss. Rules of img are, by nature, flexible. They gradually change with experience, and no one rule is valid in every situation; I break my own rules all the time. Nonetheless, I'll warn you at the outset that I'm pretty opinionated about this stuff: and I have little sympathy for sloppy thinking or sloppy programming. I make no apology for stating strongly things that I believe strongly. My opinions are
always subject to change, of course, provided that you can convince me that I'm wrong, but bear in mind that this book is based on experience, not theory. I realize that a lot of this book treads dangerously close to religion for some and that many of the things I say are controversial, but I think that there's always room for intelligent discourse between two people with the common goal of improving their craft