Project organization, decoupling, events, interfaces, state machines and reusable systems.
Separation of Responsibilities
Managers
Singleton
Events and Decoupling
Interfaces
State Machine
Object Pooling
ScriptableObjects as Architecture
Dependencies and Manual Injection
Composition vs Inheritance
Service Locator
Interfaces Between Systems
Folder Organization
Namespaces
Assembly Definitions
Game Events
Observer Pattern
Layered Architecture
Feature-Based Architecture