GRASP (object-oriented design): Difference between revisions

Content deleted Content added
Tag: Reverted
m Removed typo
Line 67:
===High cohesion===
{{main|Cohesion (computer science)}}
'''High cohesion''' is an evaluative pattern that attempts to keep objects appropriately focused, manageable and understandable. High cohesion is generally used in support of low coupling. High cohesion means that the responsibilities of a given set of elements are strongly related and highly focused on a rather specific topic. Breaking programs into classes and subsystems, if correctly done, is an example of activities that increase the cohesive properties of named classes and subsystems. Alternatively, low cohesion is a situation in which a set of elements, of e.g., a subsystem, has too many unrelated responsibilities. Subsystems with low cohesion between their constituent elements often fwt suffer from being hard to comprehend, reuse, maintain and change as a whole.<ref name="Larman2004"/>{{rp|314–315}}
 
===Polymorphism===