Examples from O'Reilly Head First Design Patterns