什么是UML图?

UML-Unified Modeling Language 统一建模语言,又称标准建模语言

是用来对软件密集系统进行可视化建模的一种语言。

UML的定义包括UML语义和UML表示法两个元素。

用于软件系统分析和设计的语言工具,

它用于帮助软件开发人员进行思考和记录思路的结果

UML本身是一套符号的规定,就像数学符号和化学符号一样,

这些符号用于描述软件模型中的各个元素和他们之间的关系

UML分类:

- 用例图(use case)

- 静态结构图:类图、对象图、包图、组件图、部署图

- 动态行为图:交互图(时序图与协作图)、状态图、活动图

类图是描述类与类之间的关系的,是UML图中最核心的

类的关系:

1、依赖关系(Dependency)

1) 类中用到了对方

2) 如果是类的成员属性

3) 如果是方法的返回类型

4) 是方法接收的参数类型

5) 方法中使用到

【表示一种使用的关系】

2、泛化关系(generalization)

泛化关系实际上就是继承关系,他是依赖关系的特例

如果A类继承了B类,我们就说A和B存在泛化关系

3、实现关系(Implementation | Realization)

实现关系实际上就是A类实现B接口,他是依赖关系的特例

4、关联关系(Association)

关联关系实际上就是类与类之间的联系,他是依赖关系的特例

关联具有导航性:

  即双向关系或单向关系

关系具有多重性:

  “1”(表示有且仅有一个),

  “0...”(表示0个或者多个),

  “0,1”(表示0个或者一个),

  “n...m”(表示n到 m个都可以),“m...*”(表示至少m个)。

5、聚合关系(Aggregation)

表示的是整体和部分的关系,整体与部分可以分开

聚合关系是关联关系的特例,所以他具有关联的导航性与多重性。

6、组合关系(Composition)

整体与部分的关系,但是整体与部分不可以分开

小提示:

使用注释描述,关系符号是一个虚线 
- - - - 

【设计模式 Design Pattern】【UML】建模语言的更多相关文章

  1. 设计模式(Design Pattern)系列之.NET专题

    最近,不是特别忙,重新翻了下设计模式,特地在此记录一下.会不定期更新本系列专题文章. 设计模式(Design pattern)是一套被反复使用.多数人知晓的.经过分类编目的.代码设计经验的总结. 使用 ...

  2. 【UML 建模】UML建模语言入门 -- 静态图详解 类图 对象图 包图 静态图建模实战

    发现个好东西思维导图, 最近开始用MindManager整理博客 . 作者 :万境绝尘  转载请注明出处 : http://blog.csdn.net/shulianghan/article/deta ...

  3. 【UML 建模】UML建模语言入门-视图,事物,关系,通用机制

    . 作者 :万境绝尘  转载请注明出处 : http://blog.csdn.net/shulianghan/article/details/18964835 . 一. UML视图 1. Ration ...

  4. 面向对象基础及UML建模语言

    1.面向对象的方法起源于面向对象程序设计语言,其发展过程大体经历了初始阶段.发展阶段和成熟阶段. 2.面向对象方法主要优点 (1)从认识论的角度可以看出,面向对象方法改变了开发软件的方式. (2)面向 ...

  5. UML建模语言入门 -- 静态图详解 类图 对象图 包图 静态图建模实战

    发现个好东西思维导图, 最近开始用MindManager整理博客 . 作者 :万境绝尘  转载请注明出处 : http://blog.csdn.net/shulianghan/article/deta ...

  6. UML建模语言入门-视图,事物,关系,通用机制

    . 作者 :万境绝尘  转载请注明出处 : http://blog.csdn.net/shulianghan/article/details/18964835 . 一. UML视图 1. Ration ...

  7. UML建模语言、设计原则、设计模式

    1.UML统一建模语言 定义:用于软件系统设计与分析的语言工具 目的:帮助开发人员更好的梳理逻辑.思路 学习地址:UML概述_w3cschool 官网:https://www.omg.org/spec ...

  8. UML建模语言入门 -- 用例视图详解 用例视图建模实战

    . 作者 :万境绝尘  转载请注明出处 : http://blog.csdn.net/shulianghan/article/details/18964835 . 一. 用例视图概述 用例视图表述哪些 ...

  9. 【UML 建模】UML建模语言入门 -- 用例视图详解 用例视图建模实战

    . 作者 :万境绝尘  转载请注明出处 : http://blog.csdn.net/shulianghan/article/details/18964835 . 一. 用例视图概述 用例视图表述哪些 ...

  10. 设计模式Design Pattern(1)--简介

    什么是设计模式? 软件开发人员在长期实践中总结出来的解决特定问题的一套解决方案. 对象设计原则 计模式主要是基于以下的面向对象设计原则. 对接口编程而不是对实现编程. 优先使用对象组合而不是继承. 设 ...

随机推荐

  1. go随笔

    1)声明在函数内部,是函数的本地值,类似private 2)声明在函数外部,是对当前包可见(包内所有.go文件都可见)的全局值,类似protect 3)声明在函数外部且首字母大写是所有包可见的全局值, ...

  2. org.elasticsearch.client.transport.NoNodeAvailableException: None of the configured nodes are available es端口号及集群名称

    org.elasticsearch.client.transport.NoNodeAvailableException: None of the configured nodes are availa ...

  3. 一文详解分布式 ID

    前言 分布式系统中,我们经常需要对数据.消息等进行唯一标识,这个唯一标识就是分布式 ID,那么我们如何设计它呢?本文将详细讲述分布式 ID 及其生成方案. 一.为什么需要分布式 ID 目前大部分的系统 ...

  4. centos8使用nmcli实现bond

    #添加bonding接口 nmcli con add type bond con-name bond0 ifname bond0 mode active-backup ipv4.method manu ...

  5. C# pythonnet(1)_传感器数据清洗算法

    Python代码如下 import pandas as pd # 读取数据 data = pd.read_csv('data_row.csv') # 检查异常值 def detect_outliers ...

  6. DDD 笔记

    1. 简单讲讲DDD,和DDD哪些优势 领域驱动设计.就是通过领域来指导软件设计,是一种十分抽象的软件设计思想,它主要分为战略设计和战术设计 战略方面,通过事件风暴进行领域模型的划分,划分出核心域,子 ...

  7. 使用 nginx 共享文件

    1. 安装nginx 2. 在nginx的配置文件的server部分加上如下的配置: location /shared/ { autoindex on; autoindex_exact_size on ...

  8. power bi权限控制笔记

    power bi权限控制:power bi权限控制角色目前只能在desktop 客户端进行创建.报表进行权限控制后,用于行级别安全,需注意:a.对数据集做行级别安全性的角色分配 b.需要进行报表的共享 ...

  9. Canavs在文字上绘制删除线/中划线

    效果图: 思路: 绘制文字 绘制高度为1px的长方形,并用黑色填充 长方形的宽度为文字的长度 具体代码: let canvas = document.getElementById('canvas'); ...

  10. QEMU + Vscode + Arm Arch's Linux调试小记

    QEMU + Vscode + Arm Arch's Linux调试小记 ​ 前几天看到了一篇讲授如何调试ARM Linux内核的文章,这里现在记录一下调试ARM Linux内核的办法 下载QEMU ...