首页 » 软件优化 » 软件设计别再聚合和组合傻傻分不清了(关系聚合是一种局部软件)

软件设计别再聚合和组合傻傻分不清了(关系聚合是一种局部软件)

南宫静远 2024-07-24 20:06:40 0

扫一扫用手机浏览

文章目录 [+]

软件设计中对于一对多的设计,往往采用聚合或组合关系标记UML图。
但一般不会详细区分这2种关系。

聚合关系:一种特殊的关联关系,是一种整体和局部的关系。
局部可以离开整体而独立存在,是一种语义关系。
如:部门和员工的关系。
若部门不存在了,员工还存在的。

UML图的画法为空心菱形。

软件设计别再聚合和组合傻傻分不清了(关系聚合是一种局部软件) 软件优化
(图片来自网络侵删)

组合关系:同样的,也是一种特殊的关联关系,是一种整体和局部的关系。
局部不能离开整体而独立存在,是一种语意关系。
如:公司和部门的关系。
若公司不存在了,则部门也不应继续存在;再如鸟和翅膀的关系,如果鸟不在了,翅膀也不存在。

UML图的画法为实心菱形。

聚合与组合的差异

使用误区主要有:

1 对于一对多的关系,未思考是否属于整体和局部语义,直接判定要么是聚合要么是组合。
实际可能仅是简单的关联关系,此时不需要用聚合或组合来表达,用普通关联更好。

2 不区分是否聚合或组合,未思考其中的实现区别,其中聚合用于松散的关系,组合用于紧密的关系,在创建和销毁的时刻,会有很大差异。

#程序员##软件开发#

孜孜不倦,每日一学

标签:

相关文章