[学习][笔记]设计模式(基于C/C++实现)之 设计基础(二)

简介: [学习][笔记]设计模式(基于C/C++实现)之 设计基础(二)
关联
组合关联

定义 组合也是关联关系的一种特例,他体现的是一种 contains-a 的关系,这种关系比聚 合更强,也称为强聚合;他同样体现整体与部分间的关系,但此时整体与部分是不可分 的,它要求代表整体的对象负责代表部分的对象的生命周期整体的生命周期结束也就意 味着部分的生命周期结束。比如你和你的大脑。 表现在代码层面,和关联关系是一致的,只能从语义级别来区分;

组件组成个体。

箭头及指向

带实心菱形的实线,菱形指向整体

类图关系

聚合关联

定义 聚合是关联关系的一种特例,他体现的是整体与部分、拥有的关系,即 has-a 的关 系,此时整体与部分之间是可分离的,他们可以具有各自的生命周期,部分可以属于多 个整体对象,也可以为多个整体对象共享。比如公司与员工的关系等。 表现在代码层面,和关联关系是一致的,只能从语义级别来区分。

个体组成整体

箭头及指向

带空心菱形的实心线,菱形指向整体。

类图关系

组合和聚合

普通关联

是一种拥有的关系, 它使一个类知道另一个类的属性和方法,强调的是一种 A-A 的 关系;关联可以是双向的,也可以是单向的。双向的关联可以有两个箭头或者没有箭头, 单向的关联有一个箭头。

在代码层面,通常体现为成员变量的关系。

箭头及指向

带普通箭头的实心线,指向被拥有者

类图关系

依赖关联

定义

是一种使用的关系,即一个类的实现需要另一个类的协助,所以要尽量不使用双向 的互相依赖。 比如某人要过河,需要借用一条船,此时人与船之间的关系就是依赖;表现在代码 层面,为类 B 作为参数被类 A 在某个 method 方法中使用。 局部变量、方法的参数或者对静态方法的调用

箭头指向

带箭头的虚线,指向被使用者

类图关系

对象图

进程视图

序列图(时序图,顺序图)

java123时序图是什么

定义

捕捉一段时间内多个对象间的交互信息,强调消息交互的时间顺序

图示

协作图

状态图

https://zhuanlan.zhihu.com/p/149196661

活动图

活动图

定义

活动图则强调的是从活动到活动的控制流。

活动图是一种表述过程基理、业务过程以及工作流的技术。它可以用来对业务过程、工作流建模,也可以对用例实现甚至是程序实现来建模。

活动图在本质上是一种流程图。

图示

实现视图

构件图

用例视图

用例图

定义

用例是在系统中执行的一系列动作,这些动作将生成特定执行者可见的价值结果。一个用例定义一组用例实例。

简单而言,就是用户的基本操作。

图示

UML实战

pdf书籍

UML在需求分析与系统设计中之实战讲解(完整UML图形演示)

UML类图实例讲解

设计模式

相关文章
|
1月前
|
设计模式 Java API
Kotlin教程笔记(50) - 改良设计模式 - 工厂模式
Kotlin教程笔记(50) - 改良设计模式 - 工厂模式
|
1月前
|
设计模式 监控 Java
Kotlin教程笔记(52) - 改良设计模式 - 观察者模式
Kotlin教程笔记(52) - 改良设计模式 - 观察者模式
|
1月前
|
设计模式 安全 Java
Kotlin教程笔记(51) - 改良设计模式 - 构建者模式
Kotlin教程笔记(51) - 改良设计模式 - 构建者模式
|
13天前
|
算法 网络安全 区块链
2023/11/10学习记录-C/C++对称分组加密DES
本文介绍了对称分组加密的常见算法(如DES、3DES、AES和国密SM4)及其应用场景,包括文件和视频加密、比特币私钥加密、消息和配置项加密及SSL通信加密。文章还详细展示了如何使用异或实现一个简易的对称加密算法,并通过示例代码演示了DES算法在ECB和CBC模式下的加密和解密过程,以及如何封装DES实现CBC和ECB的PKCS7Padding分块填充。
37 4
2023/11/10学习记录-C/C++对称分组加密DES
|
26天前
|
设计模式 Java Kotlin
Kotlin教程笔记(56) - 改良设计模式 - 装饰者模式
Kotlin教程笔记(56) - 改良设计模式 - 装饰者模式
37 2
|
26天前
|
设计模式 安全 Java
Kotlin教程笔记(57) - 改良设计模式 - 单例模式
Kotlin教程笔记(57) - 改良设计模式 - 单例模式
25 2
|
1月前
|
设计模式 Java Kotlin
Kotlin教程笔记(54) - 改良设计模式 - 迭代器模式
Kotlin教程笔记(54) - 改良设计模式 - 迭代器模式
43 2
|
1月前
|
设计模式 Java API
Kotlin教程笔记(50) - 改良设计模式 - 工厂模式
Kotlin教程笔记(50) - 改良设计模式 - 工厂模式
43 2
|
1月前
|
设计模式 算法 Kotlin
Kotlin教程笔记(53) - 改良设计模式 - 策略模式
Kotlin教程笔记(53) - 改良设计模式 - 策略模式
45 1
|
1月前
|
设计模式 监控 Java
Kotlin教程笔记(52) - 改良设计模式 - 观察者模式
Kotlin教程笔记(52) - 改良设计模式 - 观察者模式
37 1