CSC/ECE 517 Fall 2007/wiki3 6 pm: Difference between revisions
No edit summary |
No edit summary |
||
Line 1: | Line 1: | ||
''Take the Controller pattern (which we did not cover in class) and catalog the information on it available on the Web. Find good descriptions and good, concise, understandable examples. Tell which you consider the best to present to a class.'' | ''Take the Controller pattern (which we did not cover in class) and catalog the information on it available on the Web. Find good descriptions and good, concise, understandable examples. Tell which you consider the best to present to a class.'' | ||
=Design Patterns= | |||
A [http://en.wikipedia.org/wiki/Design_pattern_%28computer_science%29 Design Pattern] refers to a named description of a problem and a solution that can be applied in different contexts. Patterns are ''proven solutions to common problems''. | |||
==GRASP Patterns== | |||
[http://en.wikipedia.org/wiki/GRASP_(Object_Oriented_Design) GRASP] refers to '''G'''eneral '''R'''esponsibility '''A'''ssignment '''S'''oftware '''P'''atterns. It includes a systematic approach to [http://en.wikipedia.org/wiki/Object_oriented_design Object Oriented Design], while assigning responsibilities to classes. | |||
The GRASP Patterns include: | |||
* Information Expert | |||
* Creator | |||
* Controller | |||
* Low Coupling | |||
* High Cohesion | |||
* Polymorphism | |||
* Pure Fabrication | |||
* Indirection | |||
* Protected Variations | |||
Some of these, such as "Low Coupling" and "High Cohesion" are merely good design principles, and not design patterns. | |||
=The Controller Pattern= | =The Controller Pattern= | ||
==Introduction== | ==Introduction== | ||
==Examples== | ==Examples== | ||
Line 11: | Line 30: | ||
=References= | =References= | ||
Applying UML and Patterns: Craig Larman |
Revision as of 03:30, 14 November 2007
Take the Controller pattern (which we did not cover in class) and catalog the information on it available on the Web. Find good descriptions and good, concise, understandable examples. Tell which you consider the best to present to a class.
Design Patterns
A Design Pattern refers to a named description of a problem and a solution that can be applied in different contexts. Patterns are proven solutions to common problems.
GRASP Patterns
GRASP refers to General Responsibility Assignment Software Patterns. It includes a systematic approach to Object Oriented Design, while assigning responsibilities to classes.
The GRASP Patterns include:
- Information Expert
- Creator
- Controller
- Low Coupling
- High Cohesion
- Polymorphism
- Pure Fabrication
- Indirection
- Protected Variations
Some of these, such as "Low Coupling" and "High Cohesion" are merely good design principles, and not design patterns.
The Controller Pattern
Introduction
Examples
See Also
References
Applying UML and Patterns: Craig Larman