Design Patterns In Action
v MVC separates model from view
v Commands and Visitors isolate rules
from behaviors
v State pattern models game behavior
v Calculating the next move is a Strategy
Design patterns express abstractions