Posts 设计模式-UML
Post
Cancel

设计模式-UML

前言

UMLUnified Modeling Language 的缩写,即“统一建模语言”。其作用在于建立了一套整图组成的标准化建模语言,用于帮助系统开发人员阐明、设计和构建软件系统。UML图一般分为两组,一组称为结构性图,如类图、组件图、部署图等;一组称为行为性图,如用例图、活动图、序列图等。其中应用最为广泛的便是类图了,常用于系统软件设计。

UML类图

UML类图最为常见的几种关系有:泛化(Generalization)、实现(Realization)、组合(Composition)、聚合(Aggregation)、关联(Association)、依赖(Dependency)。其强弱顺序为:泛化=实现>组合>聚合>关联>依赖。

1.泛化

泛化表述是一种继承关系,表述的是一般与特殊的关系,即子类如何特化父类的所有特征和行为。如哺乳动物和猫/狗的关系。

img

2.实现

实现表述的是类与结构的关系,表示类是接口所有特征和行为的实现。如狗为哺乳动物,现在需要提供主人和狗的交互动作,则可以定义一个IDog的接口,表示主人和宠物的交互,而狗需要实现这个接口。

img

3.组合

组合表述的为整体和部分的关系,但是部分离开整体后无法单独存在。如人体和头/腿等的关系。

img

4.聚合

聚合表述的为整体和部分的关系,但是部分可以离开整体单独存在,因此弱于组合。如公司和员工的关系,或者车辆和引擎/轮胎的关系。

img

5.关联

关联表述的是一种拥有关系,表示一个类知道另一个类的属性和方法,关联可以是单向的也可以是双向的。如读书和读者为双向关系,读书和作者是单向关系。

img

6.依赖

依赖表述的是一种使用关系,表示一个类的实现需要另一个类的协助,所以尽量不使用双向的互相依赖。如司机和车的关系,司机的身份要依赖于车的存在。

img

This post is licensed under CC BY 4.0 by the author.

Transformer在CV领域的应用与部署

Python-常用装饰器