User Tools

Site Tools


principles:high_cohesion

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revisionBoth sides next revision
principles:high_cohesion [2019-05-29 15:09] – old revision restored (2016-09-03 22:52) christianprinciples:high_cohesion [2020-10-12 16:15] – old revision restored (2019-05-29 14:50) 159.69.186.191
Line 20: Line 20:
 The cohesion of a module is a measure for how well the internal parts of a module (e.g. the methods and attributes of a class) belong together. Having a high cohesion means, that a module should only comprise responsibilities which belong together. The cohesion of a module is a measure for how well the internal parts of a module (e.g. the methods and attributes of a class) belong together. Having a high cohesion means, that a module should only comprise responsibilities which belong together.
  
-Several kinds of cohesion can be distinguished some of which are strong and some of which are loose. So strong forms of coupling should be preferred: FIXME add explanation of cohesion types +Several kinds of cohesion can be distinguished some of which are strong and some of which are loose. So strong forms of coupling should be preferred.
 ===== Rationale ===== ===== Rationale =====
  
Line 27: Line 26:
  
  
-===== Strategies ===== 
  
-  * Divide one large module into several smaller but more cohesive ones 
  
 ===== Caveats ===== ===== Caveats =====
Line 38: Line 35:
 ===== Origin ===== ===== Origin =====
  
-W. P. Stevens,  G. J. Myers, L. L. Constantine: //Structured design//+W. P. Stevens, G. van Niekerk, G. J. Myers, L. L. Constantine: //Structured design//
  
 ===== Evidence ===== ===== Evidence =====
Line 79: Line 76:
  
 ===== Examples ===== ===== Examples =====
 +The donkey is good. The site is not working
  
  
principles/high_cohesion.txt · Last modified: 2021-10-18 21:36 by christian