Nil or export coupling only
From CSSEMediaWiki
(Difference between revisions)
(New page: Riel's Heuristic #2.7 Classes should have only nil or export coupling with other classes. Classes should only depend on the public methods of another class or nothing at all. Other forms ...) |
m (Reverted edits by Ebybymic (Talk); changed back to last version by JaninaVoigt) |
||
(6 intermediate revisions by 5 users not shown) | |||
Line 1: | Line 1: | ||
− | Riel's Heuristic | + | :''Classes should only exhibit nil or export coupling with other classes, i.e. a class should only use operations in the public interface of another class or have nothing to do with that class'' --Riel's Heuristic 2.7, [[Arthur Riel 1996]] |
− | + | Classes should only depend on the public methods of another class or nothing at all. Other forms of coupling give away implementation details of a class, which is bad for maintenance when implementations need to be changed. | |
− | Riel also states that class cohesion ensures that all elements | + | Riel also states that class cohesion ensures that all elements of a class are related. |
+ | |||
+ | == See also == | ||
+ | * [[Riel's heuristics]] | ||
+ | * [[Program to the interface not the implementation]] | ||
+ | * [[Design by contract]] | ||
+ | * [[Coupling and cohesion]] | ||
+ | |||
+ | [[Category:Riel's heuristics]] |
Latest revision as of 03:18, 25 November 2010
- Classes should only exhibit nil or export coupling with other classes, i.e. a class should only use operations in the public interface of another class or have nothing to do with that class --Riel's Heuristic 2.7, Arthur Riel 1996
Classes should only depend on the public methods of another class or nothing at all. Other forms of coupling give away implementation details of a class, which is bad for maintenance when implementations need to be changed.
Riel also states that class cohesion ensures that all elements of a class are related.