Please Share Feedback


Questions, comments, suggestions? Let us know what you think on our Forum.

To contact us privately, please use our contact form.

Author: Elyse, PMP, CPHIMS
March 27, 2004


In reviewing Design Patterns and following Data and Object Factory's Patterns I figured I'd share a classification of the GOF design patterns.

  Creational Patterns   How to make an object.
    Class
      Factory Method Makes an instance of several derived classes based on interfaced data or events.
    Object
      Abstract Factory Creates an instance of several families of classes without detailing concrete classes.
      Builder Separates object construction from its representation, always creates the same type of object.
      Prototype A fully initialized instance used for copying or cloning.
      Singleton A class with only a single instance with global access points.
               
  Structural Patterns   The building blocks of objects
    Class
      Adapter Match interfaces of different classes therefore classes can work together despite incompatible interfaces
    Object
      Adapter Match interfaces of different classes therefore classes can work together despite incompatible interfaces
      Bridge Separates an object's interface from its implementation so the two can vary independently
      Composite A structure of simple and composite objects which makes the total object more than just the sum of its parts.
      Decorator Dynamically add alternate processing to objects.
      Facade A single class that hides the complexity an entire subsystem.
      Flyweight A fine-grained instance used for efficient sharing of information contained elsewhere.
      Proxy A place holder object representing the true object
 
  Behavioral Patterns   the way objects play and work.
    Class
      Interpreter A way to include language elements in a program to match the grammer of the intended language.
      Template
       Method
Create the shell of an algorithm in a method, then defer the exact steps to a subclass.
    Object
      Chain of
      Responsibility
A way of passing a request between a chain of objects to find the object that can handle the request.
      Command Encapsulate a command request as an object to enable, logging and/or queuing of requests, and provides error-handling for unhandled requests.
      Iterator Sequentially access the elements of a collection without knowing the inner workings of the collection.
      Mediator Defines simplified communication between classes to prevent a group of classes from referring explicitly to each other.
      Memento Capture an object's internal state to be able to restore it later.
      Observer A way of notifying change to a number of classes to ensure consistency between the classes.
      State Alter an object's behavior when its state changes
      Strategy Encapsulates an algorithm inside a class separating the selection from the implementation
      Visitor Adds a new operation to a class without changing the class

Subscribe and Share!

Did you enjoy this article? Your feedback is very important! I'd like to invite you to keep up to date with the latest posts from Anticlue. We offer several venues. If you have some questions, help can be found here.