All design patterns share a few properties, keen to describing a good design pattern and following are the properties Design Patterns – Elements of reusable object-oriented Software uses to describe design patterns, and therefore the ones I’ll be using on my posts, since that will be my main reference:
Name: All design patterns need a name and a good name is vital because it will become part of the vocabulary. If it’s the case, a second popular name (Design Pattern calls this “Also known as”).
Intent: What does the design pattern do? What problem does it address?
Motivation: A scenario that can state the importance of the pattern.
Applicability: In which situations can the design pattern be applied? Examples of poor designs the pattern can address and how to recognize those situations.
Structure: Graphical representation of the classes in the pattern. I will NOT be providing such graphical representations. Such images are copyrighted and I do not have permission from the authors to publish them.
Participants: Classes that participate in the design and their responsibilities.
Collaborations: How the participants work to accomplish their responsibilities.
Consequences: Trade-offs and results of using the design.
Implementation: Pitfalls, hints, techniques involved.
Sample code: Code fragments that illustrate how you might implement the design pattern. In my blog I’ll be giving those in C# 2.0 or 3.5 (I’ll point out which framework I’m using each time).
Known uses: Examples from the real world of complex systems that use the pattern.
Related Patterns: Closely related patterns, keen differences and patterns used in the design described.
Later this week, I’ll be posting the Abstract Factory description.
Regards.
Del.iciou.us
Wednesday, July 9, 2008
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment