CSC/ECE 517 Fall 2007/wiki3 5 ns: Difference between revisions

From Expertiza_Wiki
Jump to navigation Jump to search
Line 19: Line 19:
The Creator Pattern, does not have many information on the web at all. Most of the websites that we found, use the same approach and the same example for explaining the pattern. Here, we are presenting the websites that we think they do a better job than other resources that we found online.
The Creator Pattern, does not have many information on the web at all. Most of the websites that we found, use the same approach and the same example for explaining the pattern. Here, we are presenting the websites that we think they do a better job than other resources that we found online.


[http://en.wikipedia.org/wiki/GRASP_(Object_Oriented_Design), "Wikipedia"]
[http://en.wikipedia.org/wiki/GRASP_(Object_Oriented_Design), "Wikipedia"] is one of the good places to read, to get a better understanding of what GRASP means, what patterns and principles are included in GRASP. It also briefly explains the Creator Pattern and where it is used in object oriented systems.


[http://davidhayden.com/blog/dave/archive/2004/12/06/667.aspx, "David Hayden"]
[http://davidhayden.com/blog/dave/archive/2004/12/06/667.aspx, "David Hayden"]
http://web.cs.wpi.edu/~gpollice/cs4233-a05/CourseNotes/maps/class4/Creator.html
http://web.cs.wpi.edu/~gpollice/cs4233-a05/CourseNotes/pdf/CS4233%20Class%204.pdf


[http://web.cs.wpi.edu/~gpollice/cs4233-a05/CourseNotes/pdf/CS4233%20Class%204.pdf, "GRASP Class Notes"]





Revision as of 20:16, 18 November 2007

Take the Creator pattern and catalog the information on it available on the Web. Explain how it is different from the Factory pattern. Find good descriptions and good, concise, understandable examples. Tell which you consider the best to present to a class.

GRASP

GRASP stands for General Responsibility Assignment Software Patterns (or Principles), and they are the common object-oriented design patterns or principles that assign responsibility to classes and objects. Some of GRASP includes Information Expert, Creator, Controller, Low Coupling, High Cohesion, Polymorphism, Pure Fabrication, Indirection, Protected Variations.

What is Creator Pattern?

Creator Pattern is one of the GRASP approaches, which is developed to find an answer to the question of "Who creates an object of class A?" in object-oriented systems. Creator pattern suggests that Class B should create an instance of Class A if

  • B aggregates instances of A, or;
  • B contains instances of A, or;
  • B records instances of A, or;
  • B closely uses instances of A, or;
  • B has the necessary information for creating the new instance of A.

Creator Pattern vs Factory Pattern

Information Available on the Web

The Creator Pattern, does not have many information on the web at all. Most of the websites that we found, use the same approach and the same example for explaining the pattern. Here, we are presenting the websites that we think they do a better job than other resources that we found online.

"Wikipedia" is one of the good places to read, to get a better understanding of what GRASP means, what patterns and principles are included in GRASP. It also briefly explains the Creator Pattern and where it is used in object oriented systems.

"David Hayden"

"GRASP Class Notes"


http://class.ee.iastate.edu/berleant/home/Courses/SoftwareEngineering/CprE486fall2005/moreGRASP.pdf http://www.cse.ucsd.edu/classes/fa06/cse111/lectures/Lecture%206%20%20Design%20Evaluation%20and%20Intro%20to%20OO%20Patterns.ppt

http://books.google.com/books?id=r8i-4En_aa4C&pg=PA228&lpg=PA228&dq=%22creator+pattern%22+example&source=web&ots=mT9HKWvlQX&sig=zsygR_-22hq9SfNOQLSiAaEExy8#PPA216,M1

http://class.ee.iastate.edu/berleant/home/Courses/SoftwareEngineering/CprE486fall2005/moreGRASP.pdf

http://faculty.kutztown.edu/spiegel/CSc520/PowerPoint/10_GRASP_1.ppt

http://www.augustana.ab.ca/~mohrj/courses/2003.fall/csc220/lecture_notes/responsibilities.html

http://www.soc.napier.ac.uk/module.php3?op=getresource&cloaking=no&resourceid=5938601

http://faculty.inverhills.edu/dlevitt/CS%202000%20(FP)/GRASP%20Patterns.pdf

http://web.njit.edu/~gblank/cis683/Larman%20Chapter%2018.ppt

http://www.academic.marist.edu/~jzbv/SoftwareDevelopment/GRASP.ppt

http://www.perisic.com/oosd/design/GRASP.ppt

http://www.christmann.ws/ucis342/class7/class7.html