User Tools

Site Tools


glossary:natural_coupling

Differences

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

Link to this comparison view

glossary:natural_coupling [2013-08-11 13:57] (current)
christian created
Line 1: Line 1:
 +====== Natural Coupling ======
 +===== Meaning 1 =====
  
 +==== Alternative Terms ====
 +/*i.e. alternative names meaning the same thing*/
 +
 +
 +==== Definition ====
 +A **natural coupling** is a [[coupling]] between classes which represent concepts which are dependent in the same way.
 +
 +==== Description ====
 +
 +==== Examples ====
 +
 +The following couplings are natural ones:
 +  * ''​Library''​ depending on ''​Book''​
 +  * ''​Stopwatch''​ depending on ''​Time''​
 +  * ''​Order''​ depending on ''​OrderItem''​
 +  * ''​OrderProxy''​ depending on ''​Order''​
 +  * ...
 +
 +The following couplings are artificial:
 +  * ''​Time''​ depending on ''​Stopwatch''​ (time should be meaningful without a stopwatch)
 +  * ''​OrderItem''​ depending on ''​Order''​ (an order item way at least be viewed separately from the order whereas an order without any items is not an order anymore)
 +  * ''​Order''​ depending on ''​DatabaseConnection''​ (an order which is not persisted is normally still an order, the dependency is not necessary from a conceptual point of view)
 +  * ''​Order''​ depending on ''​OrderProxy''​
 +  * ...
 +
 +==== Alternative Definitions ====
 +/*i.e. slightly different definitions for basically the same thing*/
 +
 +
 +==== See Also ====
 +  * [[Artificial Coupling]]
 +  * [[Natural Class]]
 +
 +==== Further Reading ====
 +
 +
 +----
 +===== Other Meanings =====
 +/*i.e. the same term referring to something different; put short mentions here or better add more detailed descriptions as additional sections */
 +
 +----
 +===== Discussion =====
 +
 +Discuss this wiki article and the term on the corresponding [[talk:​glossary:​Natural Coupling|talk page]].
glossary/natural_coupling.txt · Last modified: 2013-08-11 13:57 by christian