SWEN-262 Lecture Notes - Lecture 1: Underlying Representation, Abstract Factory Pattern, Loose Coupling
Document Summary
Provide an interface for creating families of related or dependent objects without specifying their concrete classes. Convert the interface of a class into another interface clients expect. Adapter lets classes work together that couldn"t otherwise because of incompatible interfaces. Separate the construction of a complex object from its representation so that the same construction process can create different representations. for all objects in structure { builder->buildpart() Encapsulate a request as an object, thereby letting you parameterize clients with different requests, queue or log requests, and support undoable operations. Compose objects into tree structures to represent part-whole hierarchies. Composite lets clients treat individual objects and compositions of objects uniformly. Decorators provide a flexible alternative to subclassing for extending functionality. Provide a unified interface to a set of interfaces in a subsystem. Facade defines a higher-level interface that makes the subsystem easier to use. Define an interface for creating an object, but let subclasses decide which class to instantiate.