Book Image

Learning C# by Developing Games with Unity 2020 - Fifth Edition

By : Harrison Ferrone
Book Image

Learning C# by Developing Games with Unity 2020 - Fifth Edition

By: Harrison Ferrone

Overview of this book

Over the years, the Learning C# by Developing Games with Unity series has established itself as a popular choice for getting up to speed with C#, a powerful and versatile programming language that can be applied in a wide array of application areas. This book presents a clear path for learning C# programming from the ground up without complex jargon or unclear programming logic, all while building a simple game with Unity. This fifth edition has been updated to introduce modern C# features with the latest version of the Unity game engine, and a new chapter has been added on intermediate collection types. Starting with the basics of software programming and the C# language, you’ll learn the core concepts of programming in C#, including variables, classes, and object-oriented programming. Once you’ve got to grips with C# programming, you’ll enter the world of Unity game development and discover how you can create C# scripts for simple game mechanics. Throughout the book, you’ll gain hands-on experience with programming best practices to help you take your Unity and C# skills to the next level. By the end of this book, you’ll be able to leverage the C# language to build your own real-world Unity game development projects.
Table of Contents (16 chapters)

Basic syntax

A stack variable declaration needs to meet the following requirements:

  • The Stack keyword, its element type between left and right arrow characters, and a unique name
  • The new keyword to initialize the stack in memory, followed by the Stack keyword and element type between arrow characters
  • A pair of parentheses capped off by a semicolon

In blueprint form, it looks like this:

Stack<elementType> name = new Stack<elementType>();

Unlike the other collection types you've worked with, stacks can't be initialized with elements when they're created. 

C# supports a non-generic version of the Stack type that doesn't require you to define the type of element in the stack:

Stack myStack = new Stack();

However, this is less safe and more costly than using the preceding generic version. You can read more about Microsoft's recommendation at https://github.com/dotnet/platform-compat/blob/master/docs/DE0006.md.

Your next task is to...