5

设计#1

设计#2

哪种设计支持整体低耦合?为什么?

4

3 回答 3

1

第一个Payment是由创建的,Sale所以这更加耦合。

在第二个中,依赖注入的耦合度很低 - http://en.wikipedia.org/wiki/Dependency_injection,女巫是一种将行为与依赖解析分开的设计模式,从而解耦高度依赖的组件。Payment并且Sale在第一张照片中高度依赖。

于 2011-04-20T18:06:29.043 回答
1

在第一个付款与销售耦合。在第二个中,它与注册和销售相结合。我会说第一个耦合度较低,因为 Register 没有支付的概念。付款可以完全消除,无需更改注册。在第二种情况下,如果您取消了付款,则注册和销售都需要更改。

于 2011-04-20T18:19:18.970 回答
1

我看不出第一个例子的重点。不需要注册?

在第二个示例中,可以使用任何类型的付款。(签证、现金等)。因此,它的耦合更松散。

于 2011-04-20T18:51:54.070 回答