CSC/ECE 517 Fall 2010/ch7 7b vk: Difference between revisions
Vinaykrishna (talk | contribs) |
Vinaykrishna (talk | contribs) |
||
Line 3: | Line 3: | ||
= '''Introduction''' = | = '''Introduction''' = | ||
[http://en.wikipedia.org/wiki/Object-oriented_design Object oriented design] is a process of building a system of interacting objects to solve a given software problem. It can be otherwise defined as,identifying requirements and creating a domain model, then adding methods to the software classes, and defining the messaging between the objects to fulfill the requirements. But, deciding what methods belong where, and how the objects should interact, is critically important in the designing process and is something non-trivial. | [http://en.wikipedia.org/wiki/Object-oriented_design Object oriented design] is a process of building a system of interacting objects to solve a given software problem. It can be otherwise defined as, identifying requirements and creating a domain model, then adding methods to the software classes, and defining the messaging between the objects to fulfill the requirements. But, deciding what methods belong where, and how the objects should interact, is critically important in the designing process and is something non-trivial. | ||
Experienced Object-oriented developers build up a repertoire of both general principles and idiomatic solutions that guide them in creation of software. The principles and idioms, if codified in a structured format describing the problem and solution, and given a name, may be called as [http://en.wikipedia.org/wiki/Design_pattern_(computer_science) patterns]. | Experienced Object-oriented developers build up a repertoire of both general principles and idiomatic solutions that guide them in creation of software. The principles and idioms, if codified in a structured format describing the problem and solution, and given a name, may be called as [http://en.wikipedia.org/wiki/Design_pattern_(computer_science) patterns]. | ||
'''General Responsibility Assignment Software Patterns''' (or Principles), popularly known as [http://en.wikipedia.org/wiki/GRASP_(object-oriented_design) GRASP], are a set of guidelines for assigning responsibility to software classes and objects in object oriented design. '''Information Expert Pattern''' is first among the basic five [http://en.wikipedia.org/wiki/GRASP_(object-oriented_design) GRASP] Patterns, Information Expert, Creator, High [http://en.wikipedia.org/wiki/Cohesion_(computer_science) Cohesion], Low [http://en.wikipedia.org/wiki/Coupling_(computer_science) Coupling] and Controller, which address very basic, common questions and fundamental design issues. | '''General Responsibility Assignment Software Patterns''' (or Principles), popularly known as [http://en.wikipedia.org/wiki/GRASP_(object-oriented_design) GRASP], are a set of guidelines for assigning responsibility to software classes and objects in object oriented design. '''Information Expert Pattern''' is first among the basic five [http://en.wikipedia.org/wiki/GRASP_(object-oriented_design) GRASP] Patterns, Information Expert, Creator, High [http://en.wikipedia.org/wiki/Cohesion_(computer_science) Cohesion], Low [http://en.wikipedia.org/wiki/Coupling_(computer_science) Coupling] and Controller, which address very basic, common questions and fundamental design issues. |
Revision as of 00:10, 27 November 2010
Information Expert Pattern is one of the GRASP patterns or principles, used as a mental aid to help assigning responsibilities to various software classes, in the design of object oriented software.
Introduction
Object oriented design is a process of building a system of interacting objects to solve a given software problem. It can be otherwise defined as, identifying requirements and creating a domain model, then adding methods to the software classes, and defining the messaging between the objects to fulfill the requirements. But, deciding what methods belong where, and how the objects should interact, is critically important in the designing process and is something non-trivial.
Experienced Object-oriented developers build up a repertoire of both general principles and idiomatic solutions that guide them in creation of software. The principles and idioms, if codified in a structured format describing the problem and solution, and given a name, may be called as patterns.
General Responsibility Assignment Software Patterns (or Principles), popularly known as GRASP, are a set of guidelines for assigning responsibility to software classes and objects in object oriented design. Information Expert Pattern is first among the basic five GRASP Patterns, Information Expert, Creator, High Cohesion, Low Coupling and Controller, which address very basic, common questions and fundamental design issues.