Design Patterns in Python
Observer Pattern
Publish-subscribe event system
Interview: Event-driven architecture
Observer
The Observer pattern defines a one-to-many dependency so that when one object changes state, all its dependents are notified. Python's first-class functions make this pattern especially clean.