Welcome to the wonderful world of programming! In this book you'll learn the basics of
programming using the C# programming language. While we admit we love to code (another
word for program) just about anything, developing games is one of the coolest things of all. Most
of the examples in this book are related to game development using Unity. So you'll learn how to
program properly and you'll learn how to write C# scripts in Unity.
You'll notice we said "learn how to program properly" above, not "whack together games that
seem to work." This is a book that focuses on the correct way to write game software (and
software in general), so there's lots of discussion about our motivations for the particular design
and coding decisions we make throughout the book. If you really just want to learn all the nuts and
bolts of Unity, there are numerous books available for that, and you should buy one of those
instead. If, however, you aspire to be a professional game programmer – whether as an indie
game developer or in a large game company – then this book will give you a solid foundation for
starting on that path.
It's important to note that the Unity focus in this book is on the actual C# scripting you do to build
Unity games. The book doesn't cover the full gamut of how to build 2D and 3D Unity games from
scratch (though we do build a complete game in Chapter 20); instead, we use just enough "Unity
stuff" to build interesting pieces of game functionality so we can concentrate on learning C#.
Don't worry, there are plenty of other books and resources for learning the rest of Unity!