Learning Design Patterns with Unity: Craft reusable code with popular software design patterns and best practices in Unity and C# - Ferrone (IEEE, 2003)