Book Review - C++ Without Fear by Brian Overland
Prentice Hall sent me a review copy of C++ Without Fear by Brian Overland. Even though I'm not quite the target audience for the book, I must say I really like it.
Chapter list: Your First C++ Programs; Decisions, Decisions; The Handy, All-Purpose "for" Statement; Functions: Many Are Called; Arrays: We've Got Their Number; Pointers: Getting a Handle on Data; Strings: Analyzing the Text; Files: Electronic Storage; Some Advanced Programming Techniques; Getting Yourself Object Oriented; The Fraction Class; Constructors: If You Built It...; Operator Functions: Doing It with Class; What's "new": The StringParser Class; What's "this": The String Class; Inheritance: What a Legacy; Polymorphism: Object Independence; C++ Operators; Intrinsic Data Types; C++ Syntax Summary; ASCII Codes; Common Library Functions; Glossary of Terms; Index
The basic premise of this book is that if you're comfortable with a computer and can run programs like a word processor, you can learn C++ using this book. I'm not sure I'd recommend C++ to anyone as their first programming language. Still, you can figure that this book isn't going to try and cover every little esoteric point of the language. It covers the basic techniques and structure of C++, with copious examples and explanations. Each chapter has a number of example programs you can type in and run. After each example is a section called "How It Works" that takes an in-depth look at what is happening in the program. There are then exercises that allow you to take the basic program and concepts and expand your expertise. A few of the examples even have an optimization section where you learn how to modify the program to make it more efficient. And if you're thinking you have to buy a C++ compiler in order to run your programs, think again. The book comes with the GNU C++ freeware compiler, so you don't need anything beyond this book to get started.
Even though I have more experience in programming than the author assumes, I'm still not at all familiar with C++. Looking through this book, it has the type of style that I look for when I'm trying to learn a new skill. Approachable writing and explanations that don't assume I have a computer science degree and dream in code...
I like what the author and Prentice Hall have done with this title. If I ever free up the time to learn C++, this will be the book I'll pull off the shelf to get started.