2013-03-07 307 views

回答

17

根據wikipedia

傳入聯軸器(Ca)的:在該封裝內取決於類其它包中的類的數量是在封裝的責任的指標。傳入=傳入。

傳出耦合(Ce):包中的類依賴於其他包中的類的數量是包對外部性依賴性的指示。 Efferent =傳出。

所以,如果你有以下結構類(或包或其他):

class Foo { 
    Quux q; 
} 

class Bar { 
    Quux q; 
} 

class Quux { 
    // ... 
} 

然後FooBar各有一個傳出耦合,Quux有兩個傳入聯軸器。

+0

是傳入耦合一個更好的單一責任原則正在實踐的指標? – user20358 2017-04-22 19:50:38

+0

@ user20358 - 我不是最好的建築師,但我認爲這不是很明顯。一個傳入耦合過多的類可能會被使用太多,因爲它太多了。或者它可能只是處理某種橫切關注 - 日誌記錄,ORM工作單元,類似的事情。 – millimoose 2017-04-23 12:58:02

9

既然你提到聲納,這裏是their documentation page

  • 傳入接頭提供的定義:A類傳入耦合是 許多其他類如何使用特定類的措施。
  • 傳出耦合:類傳出耦合是特定類如何使用許多不同類的度量。
+1

會對象組成意味傳出耦合呢? – user20358 2014-02-17 10:43:06

0

耦合是一種依賴性的度量。

傳入耦合:

  • 誰要看你
  • 衡量多少其他包使用特定包。
  • 傳入依賴關係。

傳出耦合:

  • 你是誰取決於
  • 衡量特定軟件包使用了多少個不同的軟件包。
  • 傳出依賴關係。