Design Patterns
Lecture Material
Reference Material
Handling Input: command pattern + events
Management of objects: factories, factory methods, singletons, and static classes
Object behavior: state and strategy patterns
More on object behavior: decorator pattern
More on objects: null object pattern
Since you can only master a topic when you understand both sides of it, here are articles against the use of design patterns
- Design patterns are from hell! and the better followup Design patterns are from hell^2!. In particular, note that design patterns generally only apply to object oriented programming and some pattern-like behaviors are included in the core syntax of some programming languages (for example, events in C# compared to the observer pattern).