Meeting the needs of your business from a distance

Common Software Redesign Causes and Design Patterns to Help Avoid Them

by Mark Shiffer 20. November 2007 15:56

This is paraphrased/summarized from the classic "Design Patterns: Elements of Reusable Object-Oriented Software" by Gamma, Helm, Johnson and Vlissides.

1. Creating an object by specifying a class explicitly: Abstract Factory, Factory Method, Prototype

2. Dependence on specific operations: Chain of Responsibility, Command

3. Dependence on hardware or software platform: Abstract Factory, Bridge

4. Dependence on object representations or implementations: Abstract Factory, Bridge, Memento, Proxy

5. Algorithmic dependencies: Builder, Iterator, Strategy, Template Method, Visitor

6. Tight coupling: Abstract Factory, Bridge, Chain of Responsibility, Command, Facade, Mediator, Observer

7. Extending functionality by subclassing: Bridge, Chain of Responsibility, Composite, Decorator, Observer, Strategy

8. Inability to alter classes conveniently: Adapter, Decorator, Visitor

Tags:

Research

Comments

Add comment


(Will show your Gravatar icon)

  Country flag


  • Comment
  • Preview
Loading



Copyright © 2001-2012 MS Consulting, Inc. All Rights Reserved.