Architectural Styles, Design Patterns, And Objects
Design Patterns for Object-Oriented Software Development