Book Image

Learning C# by Developing Games with Unity 2019. - Fourth Edition

By : Harrison Ferrone
Book Image

Learning C# by Developing Games with Unity 2019. - Fourth Edition

By: Harrison Ferrone

Overview of this book

Learning to program in today’s technical landscape can be a daunting task, especially when faced with the sheer number of languages you have to choose from. Luckily, Learning C# with Unity 2019 removes the guesswork and starts you off on the path to becoming a confident, and competent, programmer using game development with Unity. You’ll start off small by learning the building blocks of programming, from variables, methods, and conditional statements to classes and object-oriented systems. After you have the basics under your belt you’ll explore the Unity interface, creating C# scripts, and translating your newfound knowledge into simple game mechanics. Throughout this journey, you’ll get hands-on experience with programming best practices and macro-level topics such as manager classes and flexible application architecture. By the end of the book, you’ll be familiar with intermediate C# topics like generics, delegates, and events, setting you up to take on projects of your own.
Table of Contents (20 chapters)
Free Chapter
Section 1: Programming Foundations and C#
Section 2: Scripting Game Mechanics in Unity
Section 3: Leveling Up Your C# Code

Collections at a glance

So far we've only needed variables to store a single value, but there are many conditions where a group of values will be required. Collection types in C# include Arrays, Dictionaries, and Lists, each with its own strengths and weaknesses, which we'll discuss in the following sections.


Arrays are the most basic collection C# offers. Think of them as containers for a group of values, called elements in programming terminology, each of which can be accessed or modified individually:

  • Arrays can store any type of value; all the elements need to be of the same type.
  • The length, or number of elements, an array can have is set when it's created, and can't be modified afterward.
  • If no initial values are assigned when it's created, each element will be given a default value. Arrays storing number types default to zero, while any other type gets set to null or nothing.
  • ...