Design Patterns Gang of Four Examples