principles:low_coupling
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revisionNext revisionBoth sides next revision | ||
principles:low_coupling [2013-02-25 14:05] – added source christian | principles:low_coupling [2021-09-02 12:46] – old revision restored (2021-03-29 09:33) 65.21.179.175 | ||
---|---|---|---|
Line 55: | Line 55: | ||
* [[wiki: | * [[wiki: | ||
- | * [[wiki: | + | * [[wiki: |
/* * [[wiki: | /* * [[wiki: | ||
Line 73: | Line 73: | ||
* [[Keep It Simple Stupid]] (KISS): Reducing the coupling often involves the use of complicated interaction patterns, indirections, | * [[Keep It Simple Stupid]] (KISS): Reducing the coupling often involves the use of complicated interaction patterns, indirections, | ||
* [[High Cohesion]] (HC): A system consisting of one single module has a very low coupling as there are no dependencies on other modules. But such a system also has low cohesion. The other extreme, very many highly cohesive modules, naturally has a higher coupling between the modules. So here a compromise has to be found. | * [[High Cohesion]] (HC): A system consisting of one single module has a very low coupling as there are no dependencies on other modules. But such a system also has low cohesion. The other extreme, very many highly cohesive modules, naturally has a higher coupling between the modules. So here a compromise has to be found. | ||
+ | * [[Rule of Explicitness]] (RoE): Direct communication typically has the disadvantage of a higher coupling. Indirection reduces coupling but creates implicit/ | ||
==== Complementary Principles ==== | ==== Complementary Principles ==== | ||
Line 86: | Line 86: | ||
{{page> | {{page> | ||
- | ===== Example | + | ===== Examples |
Line 102: | Line 102: | ||
* Martin Fowler: // | * Martin Fowler: // | ||
* Craig Larman: //Applying UML and Patterns – An Introduction to Object-Oriented Analysis and Design and Iterative Development// | * Craig Larman: //Applying UML and Patterns – An Introduction to Object-Oriented Analysis and Design and Iterative Development// | ||
+ |
principles/low_coupling.txt · Last modified: 2021-10-18 21:49 by christian