Since scripting will consume a great deal of our development time, it will be enormously beneficial to learn some best practices. Scripting is a very broad term, so we will try to limit our exposure in this chapter to situations that are very Unity-specific, focusing on problems surrounding MonoBehaviours, GameObjects, and related functionality.
We will discuss the nuances and advanced topics of the C# language, .NET library, and Mono framework in Chapter 8, Masterful Memory Management.
In this chapter, we will explore ways of applying performance enhancements for the following:
- Obtaining components in other game objects
- Optimizing component callbacks (Update(), Awake(), and so on)
- Using coroutines
- Using GameObject and Transform efficiently
- Exchanging messages between different objects
- Optimizing mathematical calculations
- Serializing/deserializing during...