Full description not available
F**E
TREMENDOUS ! PROGRAMMING BOOK - Would give 6 stars if could
I waited until I completed the first 8 of 10 chapters to write this review. I have worked through and typed (fat fingered) in every script so far. This is an exceptional book in general, an exceptional computer science book, and an exceptional self learning book for computer language programming and C++ specifically.1. Truly takes you from the beginning of C++. I am proficient in MATLAB, R, Stata, and a few other languages (historically learned Basic and Fortran in the 1980s) but C++ is my first compiled language of its type and first Object Oriented one too. BTW - C++ is amazing so far, very rich language, but lots to learn!2. The order of the material is excellent and builds on the previous lessons/chapters. The writing is clear and error free. Most importantly, it starts with a short summary of a concept, then you write an enjoyable "game" script (think the old text based games for the most part) and run it. Then the author explains the code with additional Tips, Tricks, Traps, Hints, etc. This three step process with logical groupings shows the care of the thought put into this and likely the benefits of a fourth edition.3. The chapters end with an excellent bulleted Summary, Q&A's, Discussion Questions, and Exercises to expand knowledge.4. I am using Visual Studio Community 2019 as my IDE (which I highly recommend but there is a modest learning curve for VS vs. Code::Blocks IDE which is good too) and so far all the examples (quite a few) have compiled and ran without problem or error, very impressive based on my other book experiences. One note, if you set Warnings to act as Errors during compile in your settings for the compiler then I had only one issue. The use of Enumerations in one example program. I changed these the Enumeration to an Enumeration 'Class' (I am using C++17 with my VS 2019 and the Enum Class is safer and more flexible allowing you to specify types, encapsulating the name in the scope, and use type other than INT - all good things) and the warning went away. I also reset my default to allow compiling with warnings and then Enumerations provided no issue.5. I bought both the paperback book and the kindle book. I call the kindle version (identical to the paperback) up on one of my screens and have Visual Studio on the other. I use this setup to help when I type the code into my VS cpp file and also do quick look ups on the kindle with search feature. I have the paperback open on my desk and have marked it up very extensively with two highlighters and three pen colors to reinforce ideas and concepts and draw attention to items important to me. This system has worked extremely well. I find having a marked up paper copy of the book is well worth the seemingly duplicative expense, at least for me since I learn better this way and can flip back and forth and use the index and TOC too. I still love the kindle version for all it can do to.6. I took the time to write a detailed review because I am so impressed with the book and the detail and care the author took. I really would give it 6 starts if I could. I have five other new (C++17 ready) books on C++ and decided to use this one first after looking through them all. I am very glad I did.Thank you to the author (Michael Dawson) for this fourth edition and sharing his skill with a noobie to C++ like me, to the publisher Cengage for publishing it, and of course to Amazon for carrying it in both paperback and Kindle and making the later a prime item. This was money well spent. Wishing you all good coding!
C**Y
Best Introduction to C++ Available. Great as Your First Programming Book.
I’ll cut to the chase: this book is one of the best introductions I’ve seen to the C++ language. I’ve read probably at least a dozen C++ books and I would say this would be the best place to start if you’ve never used C++ or even as your first programming book. There are some great C++ resources out there, but much of the material can be too advanced for a beginner and will probably scare you off before you get anywhere. With Beginning C++ Through Game Programming, Michael Dawson builds your knowledge from the ground up. The explanations are clear and easy to understand and no previous experience is required. You don’t even have to be a gamer to get value here as most of the games explored in the text are simple things like hangman or tic-tac-toe that anyone can understand.Dawson walks you through 10 chapters, each diving into a different aspect of the C++ language, starting simply and working up to more difficult topics. The chapter breakdown includes: types and variables, branching, loops, the STL, functions, references, pointers, classes, dynamic memory, and object-oriented programming. These topics really are the most fundamental building blocks of C++, and many are applicable to programming in any language. Lots of source code is shown, and the author explains each step along the way with an impressive amount of clarity. Even though I’d consider myself an intermediate to advanced programmer, I still found some things useful in this book, particularly the usage of the const keyboard which was always somewhat confusing to me. All the examples are simple command-line programs, so you don’t need any special libraries, just an IDE that can compile C++ code, such as Visual Studio which has a free version on Windows. If you use a different operating system, you can just get whatever free IDE you want for your platform as this book uses all standard C++ code so any compiler should work.What I have found reading other books is that they may explain concepts well, and even show code, but sometimes either they don’t give enough context on how real usage would look or the examples are so complex as to be confusing for a novice. In this text, the author is clearly aiming to teach beginners and explains everything in concise terms without becoming too complex. In each chapter, there is another full example game shown, which could be typed into a computer and run. I did not actually test any of the code, as I’d rather just learn from reading, but I didn’t find any obvious errors. Each of these games are fairly straight-forward, with apps like guess my number, hangman, madlib, tic-tac-toe, etc. My one complaint is that the final chapter covers a full blackjack game, and this was much more complicated than the previous chapters and may be a bit too advanced. However, it still may be helpful to some to see what a more involved program might look like. While the title of the book is about “game programming” I wouldn’t say you need to be a gamer to gain insight here. Though having some interest or familiarly with games can help, I’d still recommend this book for anyone interested in C++ or just wanting to learn programming in general. The author manages to cover the most key aspects of the language without burdening beginners with the more arcane constructs that will likely confuse you.Keep in mind, C++ is a beast of a language, and one book will not make you a pro overnight. After reading this title, you will still likely need other resources before you are ready to build your own apps or games. With gaming in particular, you will likely also need to learn how to use libraries, various APIs, etc. and none of that is covered here. So think of this as merely a light introduction, which will build a foundation your can bring to other more complex books. That said, I really can’t imagine a better book for people wanting to get started with programming in C++. This would work as a great first coding book for teenagers or even younger. I’m not sure there is a better beginning C++ book out there, and this is highly recommended.
M**K
Very basic overview of C++ core features
This book is only a great idea if its your first C++ adventure. Its all well and good as a nice easy start but the book seems to be padded with screenshots of the terminal displaying the output of the code followed by the code itself. There are large and normally take up most of page. There are also large diagrams to show concepts that just don't need to take up so much room, Not a huge deal but got a little noticeable. Other than that the book is great at introducing topics and how they relate to overall game development but refrains from diving any deeper by even saying a "hint" that "casting a variable from one type to another goes beyond the scope of this book."Conclusion: Get this book to start C++ and you intend to go toward game development. If you are ready for more detail and want to understand all the tools of the language, I have been Reading C++ Primer and Programming Principles and Practices Using C++ together jumping between these and getting way more in depth understanding of C++.
Trustpilot
1 month ago
1 month ago