几分钟几张图教你学会如何使用UML

简介: 版权声明:本文为博主原创文章,未经博主允许不得转载。博客源地址为zhixiang.org.cn https://blog.csdn.net/myFirstCN/article/details/80870902 很多初次接触UML的朋友们可能会感觉它各种各样的线条、关系、描述等晦涩难懂。
版权声明:本文为博主原创文章,未经博主允许不得转载。博客源地址为zhixiang.org.cn https://blog.csdn.net/myFirstCN/article/details/80870902



很多初次接触UML的朋友们可能会感觉它各种各样的线条、关系、描述等晦涩难懂。本篇文章简单介绍了一下其中几个图,用最朴实的语言结合上图片来让你一眼就能理解他们,如果您在阅读的过程种发现错误之处恳请您在评论区指点。


1.类图、对象图、接口

这三种图是uml中最简单的图了,我想看了下方三张图片你就明白了:





在类中存在几种关系,是我们必须要掌握的:

  • 一般化关系:表示类与类的继承、接口与接口之间的继承、类对接口的实现。
  • 关联关系:类与类之间的关系,一个类持有另一个类的属性和方法,他可以是单向的也可以是双向的,但是不推荐使用双向的。 关联关系还包括一个属性:基数。基数就表明这一段的类可以有几个实例,就比如说唐僧肯定只有一个,但是徒弟就可以有很多。我们就可以使用下图来表示
  • 聚合关系:它属于关联关系的一种,它表示的整体和个体的关系。例如电脑是由屏幕、键盘、鼠标等组成的
  • 合成关系:它也是关联关系的一种,不过它的关系表示的是最强的,例如人是由大脑、心脏、四肢组成的(区分聚合和合成关系时可以想象类似于人体的不可分割的是合成关系,类似于机器的坏了可以换的是聚合)
  • 依赖关系:依赖关系与一般化关系不同的是一般话关系是一个类持有另一个类的属性或方法,而依赖关系类中的方法参数为另一个类

2.组件图

组件图可以简单理解为在一个系统中的物理组件。例如程序包、类文件、配置文件、样式文件等。学习组件图请看下图:



3.部署图

部署图可以简单理解为硬件的配置及其软件是如何在网络结构中部署的(例如一个程序中一共有多少个tomcat、多少个mysql、多少个redis、他们分别部署在哪台服务器上)一起来看下图学习一下:




4.用例图

用例图主要作用是来收集系统的要求,包括内部和外部的影响(例如此系统的用户分为n种角色,每一个角色所能干的事)下图以一个用户所能使用的功能为例



5.时序图

时序图是用来描述对象之间的消息的流动顺序的,下面以一个简单的的注册流程为例分析:

在这个图片中,垂直的虚线叫做生命线,代表一个对象的存在时间。每一个箭头都是一个调用,生命线上白色的条叫做激活条,激活条代表的就是这次调用持续的时间


6.状态图

状态图描述对象从开始到结束的状态改变流程,下面同样以上方注册流程为例分析:







很多初次接触UML的朋友们可能会感觉它各种各样的线条、关系、描述等晦涩难懂。本篇文章简单介绍了一下其中几个图,用最朴实的语言结合上图片来让你一眼就能理解他们,如果您在阅读的过程种发现错误之处恳请您在评论区指点。


1.类图、对象图、接口

这三种图是uml中最简单的图了,我想看了下方三张图片你就明白了:





在类中存在几种关系,是我们必须要掌握的:

  • 一般化关系:表示类与类的继承、接口与接口之间的继承、类对接口的实现。
  • 关联关系:类与类之间的关系,一个类持有另一个类的属性和方法,他可以是单向的也可以是双向的,但是不推荐使用双向的。 关联关系还包括一个属性:基数。基数就表明这一段的类可以有几个实例,就比如说唐僧肯定只有一个,但是徒弟就可以有很多。我们就可以使用下图来表示
  • 聚合关系:它属于关联关系的一种,它表示的整体和个体的关系。例如电脑是由屏幕、键盘、鼠标等组成的
  • 合成关系:它也是关联关系的一种,不过它的关系表示的是最强的,例如人是由大脑、心脏、四肢组成的(区分聚合和合成关系时可以想象类似于人体的不可分割的是合成关系,类似于机器的坏了可以换的是聚合)
  • 依赖关系:依赖关系与一般化关系不同的是一般话关系是一个类持有另一个类的属性或方法,而依赖关系类中的方法参数为另一个类

2.组件图

组件图可以简单理解为在一个系统中的物理组件。例如程序包、类文件、配置文件、样式文件等。学习组件图请看下图:



3.部署图

部署图可以简单理解为硬件的配置及其软件是如何在网络结构中部署的(例如一个程序中一共有多少个tomcat、多少个mysql、多少个redis、他们分别部署在哪台服务器上)一起来看下图学习一下:




4.用例图

用例图主要作用是来收集系统的要求,包括内部和外部的影响(例如此系统的用户分为n种角色,每一个角色所能干的事)下图以一个用户所能使用的功能为例



5.时序图

时序图是用来描述对象之间的消息的流动顺序的,下面以一个简单的的注册流程为例分析:

在这个图片中,垂直的虚线叫做生命线,代表一个对象的存在时间。每一个箭头都是一个调用,生命线上白色的条叫做激活条,激活条代表的就是这次调用持续的时间


6.状态图

状态图描述对象从开始到结束的状态改变流程,下面同样以上方注册流程为例分析:






相关文章
|
10天前
【sgTopo】强哥古法炮制、纯手工打造简单拓扑图、流程图、思维导图组件(完善中ing)(二)
【sgTopo】强哥古法炮制、纯手工打造简单拓扑图、流程图、思维导图组件(完善中ing)
|
24天前
|
数据可视化 数据库连接 测试技术
【软件设计师备考 专题 】编写外部设计文档:系统流程图和功能说明书
【软件设计师备考 专题 】编写外部设计文档:系统流程图和功能说明书
77 0
|
10天前
【sgTopo】强哥古法炮制、纯手工打造简单拓扑图、流程图、思维导图组件(完善中ing)(一)
【sgTopo】强哥古法炮制、纯手工打造简单拓扑图、流程图、思维导图组件(完善中ing)
|
24天前
|
传感器 运维
【软件设计师备考 专题 】编写外部设计文档:系统配置图和关系图
【软件设计师备考 专题 】编写外部设计文档:系统配置图和关系图
51 1
|
架构师 Java 测试技术
软件设计实践:如何使用UML完成一个设计文档?
软件设计实践:如何使用UML完成一个设计文档?UML 建模可以很复杂,也可以很简单,简单掌握类图、时序图、组件图、部署图、用例 图、状态图、活动图这 7 种模型图,根据场景的不同,灵活在需求分析、概要设计和详细设计阶段绘制对应的模型图,可以实实在在地做好软件建模,搞好系统设计,做一个掌控局面、引领技术团队的架构师。
242 1
软件设计实践:如何使用UML完成一个设计文档?
|
搜索推荐 Python
零基础学Python【二十三、图形化界面设计 】(基础一篇全,欢迎认领)(十一)
零基础学Python【二十三、图形化界面设计 】(基础一篇全,欢迎认领)(十一)
156 0
零基础学Python【二十三、图形化界面设计 】(基础一篇全,欢迎认领)(十一)
|
Python 容器
零基础学Python【二十三、图形化界面设计 】(基础一篇全,欢迎认领)(六)
零基础学Python【二十三、图形化界面设计 】(基础一篇全,欢迎认领)(六)
101 0
零基础学Python【二十三、图形化界面设计 】(基础一篇全,欢迎认领)(六)
|
Python 容器
零基础学Python【二十三、图形化界面设计 】(基础一篇全,欢迎认领)(三)
零基础学Python【二十三、图形化界面设计 】(基础一篇全,欢迎认领)(三)
134 0
零基础学Python【二十三、图形化界面设计 】(基础一篇全,欢迎认领)(三)
|
Python
零基础学Python【二十三、图形化界面设计 】(基础一篇全,欢迎认领)(五)
零基础学Python【二十三、图形化界面设计 】(基础一篇全,欢迎认领)(五)
143 0
零基础学Python【二十三、图形化界面设计 】(基础一篇全,欢迎认领)(五)
|
Python
零基础学Python【二十三、图形化界面设计 】(基础一篇全,欢迎认领)(四)
零基础学Python【二十三、图形化界面设计 】(基础一篇全,欢迎认领)(四)
136 0
零基础学Python【二十三、图形化界面设计 】(基础一篇全,欢迎认领)(四)