我正在閱讀福勒的重構書,對這兩種代碼氣味感到困惑。「消息鏈」vs「中間人」
「消息鏈」是像a.getB().getC().getValue()
這樣的調用。
「中間人」就像
class A
{
object getCValue()
{
return b.getCValue();
}
}
我瞭解這兩個部分是,如果你已經有了「信息鏈」您通過引入「中間人」縮短它們的方式方法。如果你有「中間人」你把他們變成「消息鏈」...
現在顯然必須有一些限制,或者你會有程序員的旋轉木馬。 我應該在哪一點上比另一個更好?
一種是將類耦合到不相關的類,另一種是將類耦合到結構。所以理論上我的方法是檢查給定的變化是否減少一種耦合比增加另一種耦合。但是一種耦合越來越差,應該多加權衡呢?即只能添加一個類耦合,如果你可以刪除X結構耦合?