While writing this book, I decided on a specific mental model of my target audience, for the main reason that it's almost impossible to write a book about game development and satisfy every potential type of reader, primarily because game development is a diverse industry and there are so many types of platforms and genres, each with their specific characteristics, that I cannot take into account in a single book. So I decided on focusing the content on a particular kind of audience, which I can describe as follows:
The target audience is game programmers who are currently working on a mobile or indie game project in the Unity engine and who are in the process of refactoring their code to make it more maintainable and scalable. The reader should have a basic understanding of Unity and the C# language.
Senior programmers working on large-scale AAA or MMO games might find particular examples in this book limited compared to the architectural challenges they usually face daily. However, on the other hand, the content of this book might offer another perspective on the use of design patterns in Unity. So feel free to skip any chapter if you already know the theory and want to see how I implemented a specific pattern.