我讀可以通過「未通過不必要參數」是否傳遞一個聚合對象,而不是對象的長參數列表的減少數據耦合
說有一個makeCake
方法,該方法需要在許多實例變量被降低的數據耦合在Ingredients
類作爲參數:
makeCake(ingredients.flour, ingredients.egg, ingredients.sugar, ingredients.cheese, ingredients.cream)
而不是這個,只是通過整個配料對象
makeCake(ingredients)
和makeCake
方法內訪問的變量..
是此計數爲減少它調用makeCake方法和配料類的類之間的耦合?在你傳遞5個參數之前,現在你只傳遞一個參數?
(請注意,這個問題是用Java語言做 - 和Scala的OO側 - 記)
(抱歉,如果這個問題是讓你渴望的蛋糕,這是彈出到的第一件事情我頭):)
在你的第一個例子中,你實際上是通過成分的屬性(麪粉,雞蛋等)的值。因此,makeCake和配料之間沒有耦合。在你的第二個例子中,你自己傳遞配料。在這裏你可以找到makeCake和配料之間的聯繫。 – wolfrevo
我明白了..我對整個耦合概念很陌生,可能是錯誤的。我認爲耦合是在類/對象之間?所以耦合將在**類與makeCake方法和成分類之間? – SonicProtein
我認爲wolfrevo的評論實際上正確答案 – Leo