next up previous contents
Next: Object Composition vs. Inheritance Up: Object Oriented Design Previous: Object Oriented Programming

Design Patterns

Simply put, design patterns are techniques for solving common problems that have been proven to work well. Experienced programmers reuse solutions that have worked for them in the past rather then trying to solve problems from first principles. This is true in other fields as well. Experts rely on proven approaches to guide their decision making. In object oriented programming, design patterns refer to "descriptions of communicating objects and classes that are customized to solve a general design problem in a particular context." [7] Since patterns are well established, each pattern's constraints and tradeoffs are known ahead of time, making it easier to avoid pitfalls.

Using design patterns not only makes it easier to get a design "right" faster, it helps improve communication. If proven techniques are identified as design patterns and people learn about them, it makes it easier for those people to communicate about object oriented design in general. In a sense, it adds to their vocabulary, allowing them to express themselves more succinctly and clearly.



Paul John Rajlich
Mon May 4 16:53:57 CDT 1998