21 Design Patterns

http://www.tutorialspoint.com/design_pattern/index.htm

https://darwinsys.com/java/

Javian: Adapter: works as a bridge between api (e.g., between two incompatible api)

Javian: Builder: builds a complex obj with static method or builder's constructor. this will avoid error-prone constructor with too many arguments

Wenpu: Command pattern: create a command object that contains information to perform task to be called at a later time

Jarek: DAO object that provides an abstract interface to some type of database or other persistence mechanism

Michael: Dependency Injection: Same as IOC. An object does not care about its dependencies as they are injected via config etc and are easily swappable

Waleed: Facade: Hide complex design, simple interface helps in loosely coupled applications

Tracy: Iterator: Allows client to traverse a collection without knowledge of the structure.

Waleed: Observer: Object called subject maintains a list of dependents called observers and notifies them automatically in case of state change.

Wenpu: Producer-consumer: separates identification of tasks from its execution by implementing as producer and consumers

Todd: Proxy: class acts as an interface/in place of something.

Ian: Service Locator: encapsulate looking up of remote service, possibly cache the lookup, and handle exceptions for it.

Tracy: Singleton: Guarantees an object can only be instantiate once.

Jarek: Strategy is a software design pattern that enables an algorithm's behavior to be selected at runtime

Michael: Template Method: Abstract Classes provide template methods to be overridden by subclasses

results matching ""

    No results matching ""