CSC/ECE 517 Summer 2008/wiki2 c6 CohCoupling: Difference between revisions

From Expertiza_Wiki
Jump to navigation Jump to search
No edit summary
Line 6: Line 6:


==Cohesion==
==Cohesion==
Cohesion is the "glue" that holds a ''[http://en.wikipedia.org/wiki/Module module]'' together. It can be thought of as the type of association among the component elements of a module. Generally, one wants the highest level of cohesion possible.

Revision as of 20:27, 23 June 2008

Introduction

Cohesion and Coupling are two terms often used in object-oriented software development. They sound rather similar, but they are very different meetings. Cohesion is the “act or state of sticking together” or “the logical agreement”. It is the basic idea that a class has a focused set of responsibilities, or behaviors, from a particular perspective. In contrast to cohesion, Coupling refers to the physical connections between elements of the OO design( eg., the number of collaborations between classes or the number of messages passed between objects). It measures the strength of all relationships between functional units.

Problem Definition

Cohesion and coupling. Cohesion and coupling are concepts that are reasonably easy to understand, but nonetheless, it is worthwhile to gather readable illustrations of where they apply. Browse the hundreds of Web pages that attempt to explain these concepts, picking your favorite examples. Categorize these examples, so that the reader will see the big picture, rather than just a set of redundant illustrations. Many of these pages mention related concepts; list some of them and explain how they relate to cohesion and coupling.

Cohesion

Cohesion is the "glue" that holds a module together. It can be thought of as the type of association among the component elements of a module. Generally, one wants the highest level of cohesion possible.