我是UML的新手,我已经与序列图交叉,并意识到有两种类型:分布式和集中式。有人能解释我的差异吗?
答案 0 :(得分:2)
集中控制,一个参与者完成大部分处理,另一个参与者提供数据。
示例:
分布式控制,其中处理在许多参与者之间分配,每个参与者都做一点算法
示例:
两种风格都有其优点和缺点。大多数人,特别是那些刚接触物体的人,更习惯于集中控制。在许多方面,它更简单,因为所有处理都在一个地方;相反,在分布式控制中,你有追逐物体的感觉,试图找到程序。
尽管如此,对象偏执者更喜欢分布式控制。良好设计的主要目标之一是本地化变革的影响。访问该数据的数据和行为通常会一起更改。因此,将数据和使用它的行为放在一个地方是面向对象设计的第一条规则。
此外,通过分发控件,您可以创建更多使用多态的机会,而不是使用条件逻辑。如果不同类型的产品的产品定价算法不同,分布式控制机制允许我们使用产品的子类来处理这些变化。