85 of 90 people found the following review helpful
on July 28, 2011
Worm Burner, age 10 and resident Tech Support, asked if I would teach him C++ this summer.
Sure, no problem. Except that the last time I used C++ was during my Ph.D. dissertation and my summer plans did not include hours in front of the terminal re-learning how to program.
I highly recommend Beginning C++ through Game Programming, by Michael Dawson. This book is great for beginning programmers, especially if they have some previous programming experience (Worm Burner had already programmed in QBasic on Windows). Even if they had no previous experience, this book would walk them step-by-step through concepts like variables, input/output, loops, strings, and arrays. Best of all, it uses game example programs like Word Jumble, Mad Lib, and Tic-Tac-Toe to hook kids into figuring out the logic behind programming and applying their nascent C++ skills in a way that's fun and entertaining.
Note that this book is not intended for children. It just has a great easy-to-use format and style that lends itself to children who are advanced readers and budding programming geeks. But the programming itself is all solid C++. In other words, they're learning the real deal.
The best part about this book was that I just had to get my boys started with the first few chapters. We sat down, walked through the lessons, uploaded and changed sample code, and played around a bit. After chapter 4, they carried on without me, teaching themselves (via the book) and leaping to new heights with their programming through their own initiative.
Which is how every good programmer gets his start.
If you have a budding hacker programmer in your house, here's how to get them started:
1) Download Microsoft Visual C++ 2010 (free)
2) Buy Beginning C++ through Game Programming
3) Help your kids start (if you know some programming) or let them loose on their own (if you don't)
65 of 68 people found the following review helpful
on February 22, 2012
The book knows its audience, but I'm not sure if the audience knows the book. It starts off assuming you have no experience in programming, which is fantastic. Everyone is saying that it should go much more in depth about C++, but when teaching, throwing a bunch of information at the reader is a definite no-no, and I think the author understands this.
For the title, one might assume this books centers around game development, which it certainly does not. Upon reading it more carefully, you will see it starts with "Beginning C++". That is the real purpose of this book. "There is nothing about graphics in this book, these are no games." one might say with their arms crossed and a smirk on their face. Firstly, they are still games, and secondly the language is complex as it is. You're not going to give a person a book about calculus and expect them to understand it without knowing how to do limits (or add, for that matter)... This book is the first step to the language, and the examples are little games that act as minor exercises. Besides the last game (a blackjack program, a challenge for a novice), they are mere examples, not projects.
Do not expect to get into using API's, or implementing 3d or 2d graphics. This is about grasping basic concepts of C++ and object oriented languages... not game development. With that said, it does its job quite well.
42 of 43 people found the following review helpful
on April 3, 2012
If you are buying this book because you think you can go from not knowing C++ to making a game using directX or opengl you will be disappointed. But there is no book that could do that anyway. If you want to learn C++ in a fun way using game logic and simple word and number games this is the book for you. The typical C++ beginner book has you making programs for storing addresses of employees or something equally as dull. This book is actually fun and the code is explained very well. Before reading this book I looked at some code for programming in direct 3d and I had no clue what it even meant. After reading this book I now can see the overview of what the code is doing! I have more to learn but there is no doubt that this book put me on the path to being able to work with a game engine. I am glad I chose to buy this book.
33 of 43 people found the following review helpful
on April 12, 2011
I've been programming Visual Basic (mostly VBA) for about 10 years now, all self-taught through books, forums and experimentation. A few years back, I had a need for a faster language, so I picked up C# for the Absolute Beginner. That book was a great introduction to C# (though it is very out of date now). It took you from the 'Hello World!' beginner program to making some fairly interactive Windows Forms games, explaining all the relevant concepts along the way, and adding challenging 'take it further' tasks to cement the knowledge.
I was expecting something similar in this book. To be fair, the book is a good introduction into all the basic concepts of the C++ language (from what I can tell), but it is almost more like a reference manual than a teaching book. The code examples are extremely basic. Each example demonstrates the individual topic of the chapter, but not much else, and few of the programs operate in any type of 'game loop.' While the 'take it further' tasks exist, since the initial programs are so lite, they don't seem to really do much to cement the knowledge in. Additionally, it has no coverage at all of Windows Forms, everything is in the console.
When I finished the C# book, I was able to program a small program for my work that connected to a database, extracted data and then did various analysis of that data. I additionally wrote a few programs for my own use at home.
After finishing this book, while I think I could probably struggle and eventually get a usable program, I really don't think I know enough to do so. Certainly not one with a Windows Form. So now I am looking for another book to take the small amount of knowledge I gained from this and add to it so I can produce something.
6 of 7 people found the following review helpful
on August 7, 2013
Don't buy this book to learn game programming - buy this book because using text-based "pseudogame" examples to learn C++ is more inspiring and motivating than a dry textbook.
Tip for Absolute Beginners - If you've NEVER programmed before, skip immediately to Appendix A "Creating your first C++ program" as it teaches some very basic use of an Integrated Development Environment.
Likes - It's an easy read, especially if you already understand basic programming concepts from other languages. There's enough variety here to keep your interest between each of the chapters.
Dislikes - If you're like me, and are determined to not rely on using Standard Template Library code (STL) until you are much more familiar with C++ and data structures, well... tough luck. Many of the book's later exercises rely heavily on the use of STL code, and you'll have to look elsewhere to learn more than just he basic use of arrays in C++.
Once you successfully make it through this book end-to-end, are running and understanding each exercise, you'll likely be well prepared to pick up a much more serious and thorough book ("C++ Primer Plus" by Prata, "Game Engine Architecture" by Jason Gregory, or "Game Programming All in One" by Harbour for example).
3 of 3 people found the following review helpful
on March 29, 2011
This is for the very beginner, it goes over the fundamentals as it's really a very basic intro to C++ and the examples are "game" examples. It's not geared toward making games per say, it's an intro to C++.
If you are looking for an intro to C++ I would recommend a more comprehensive book, then buy another book on game techniques and not try to mix the two.
It's good for addition examples but you can also just google and get code examples for free.
2 of 2 people found the following review helpful
on April 6, 2012
When I first read the title I thought I was going to program small simple games like tic tac toe with a GUI, but when reading this book I realized that everything is a WIN32 project and nothing to do with GUI'S at all, which makes this book, not so much game programming as I thought it would be.
Yes there are still games that you can create through the Command Line such as guessing a number games but nothing that is actually a game with a GUI. If your looking for GUI programming then this is not the book for you. If your looking for an introduction on C++ keep reading.
As I was reading this book I noticed that this book is a great tutorial, me programing in other languages for school such as C and Visual Basic and Java, I already knew the concept of strings, integers arrays and more that is in this book. But what this book did is it broke it down and explained what strings, integers arrays do in a non boring way which made this book fun to read. The way it was written and how it was explained actually taught me a few things about Loops and how to code in C++. I like this book a lot even as a beginning C++ book because it shows me what wording I need to use in C++ to declare substrings and more, and it explains a lot about strings which other books do not cover. I would suggest this book to someone way before they bought any other book even if they have never programmed before because it will break it down thoroughly and explain it to you in a way that you might actually learn a thing or too. I have the kindle version and the code is easy to read and he does tell you where you can download the code before he even shows you the code. He also shows you the outcome before the code which I think is better because I like to try to figure out how to get his outcome without looking at his code. Then I compare my code to his. (But thats just my opinion) Anyway this book is a book I would buy so you can learn C++ even if you have programmed other languages before.
3 of 4 people found the following review helpful
on August 15, 2012
I actually liked the book, but it clearly has problems. Sometimes the order it presents things in is curious. There are few actually games, most of it is standard examples, but instead of using "Hello World" or some explicitly mathematical example, he dresses it up in "game" talk (so, "I will destroy you" instead of "Hello World", etc.). Very few of the examples are interactive, which is kind of what you'd expect a game to be. It also tends to be a bit too dense and quick for true beginners. There are few exercises too.
All that being said, it is somewhat useful, but not if you're an absolute beginner to C based languages. Even though it says "Beginning", it seems to assume you know some basic things and terminology, even while it's explaining those same things. However, if you already know the basics of variable types, logic, etc. (basic programming stuff), and you want quick exposure to the syntax of C++ and the concepts of object oriented programming, this book is pretty good.
So if you're an absolute beginner, I'd suggest some intro book on C, like "Programming in C" by Kochan. After you've finished that book, you can skip the entire sections for variables, logic, and pointers, and the rest will be a quick read (as in, a day or two). Unfortunately, it's a bit restricted (it doesn't cover multiple inheritance, and if it weren't for Kochan's book, I wouldn't know anything about the preprocessor or binary operations).
It's problem is that it works best for a very specific and strange level of experience: those who have a basic grasp of programming concepts, but need something to transition them into preparation for an intermediate level of programming. So anyway, don't let the "Beginning" or "Game" buzzwords fool you, there are better books for those wet behind the ears.
3 of 4 people found the following review helpful
on February 5, 2013
I'm a first year computer science major at the University of Houston, Go Coogs! This book has outlined every single important concept that we have learned in the first semester. Every subject was presented in the same order as the book give or take a few pages. After having worked through much of the book during the break prior to my first classes, I came to class with an incredible foundation for the subject.
The material covered is presented clearly, and is intuitively structured. Learning is project based so you will learn by doing instead of just reading (essential for actually learning the language). The book is not going to teach you how to make video games but it does make learning c++ a little more fun by frequently referencing the subject many beginner programmers aspire to: game design. The projects are fun and corny, but you definitely feel like you've actually built something functional and cool.
All in all, I whole-heartedly recommend this to anyone wanting to get a jump start on the c++ language. Not only will you learn the fundamentals of the language, but you will have a great time in the process.
1 of 1 people found the following review helpful
on January 23, 2013
C++ is notorious as one of the most difficult programming languages to learn. Some of the most unassuming syntax causes the biggest problems. This book, fortunately, makes the concepts easy to grasp through tutorials and sample code. A lot of the author's explanations were straightforward without too much technical jargon and without being patronizing, which is rare in this field. Specifically, pointers were immeasurably easier than I had heard from all the C++ woes around the internet, and other concepts that seemingly coincide are explained for their differences, which was helpful. Pay special attention to the exercises for some good review and reasoning why certain terms don't work under other circumstances. Overall, a very good book that helped me learn the language with no prior programming experience in a week. You could even work through it faster with motivation.