The Observer pattern (also called publish/subscribe) lets one object broadcast events and other objects react to them without direct references between them. This is one of the most important patterns in game development because games are full of systems that need to react to each other.