UML(主要讲解类图和时序图)

定义

  • 统一建模语言(英语:Unified Modeling Language ,缩写为UML)
  • 非专利的第三代建模和规约语言

特点

  • UML是一种开放的方法
  • 用于说明、可视化、构建和编写一个正在开发的面向对象的、软件密集系统的制品的开放方法
    • 这里的制品是指在软件开发过程中产生的各种各样的产物,如模型,各种流程图,源代码,测试用例等等,对他们进行可视化,描述和构建
  • UML展现了一系列最佳工程实践,这些最佳实践在对大规模,复杂系统进行建模方面,特别是在软件架构层次已经被证实有效
  • 即通过UML我们对系统可以有更直观的认识,并且通过不同类型的透视图跟大家交流起来也是非常方便

分类

UML2.2中一共定义了14种图示,分类如下:

结构式图形

强调的系统式的建模

静态图

类图

Class Diagram: 用于表示类、接口和实例等之间的相互静态关系,虽然名字叫类图,但类图中并不只有类,包括属性,方法,权限等.

在这里插入图片描述

记忆技巧
  1. UML箭头方向从子类指向父类,原因:
    1.定义子类时需要通过extends关键字指向父类
    2.子类一定是知道父类定义的,但是父类不一定知道子类定义
    3.只有知道对方信息时才能指向对方
  2. 实现-继承 | 虚线-实现在这里插入图片描述
    进一步解释
  • 空心三角箭头:继承或实现
  • 实线-继承:is a关系,扩展目的,不虚,很实
  • 虚线-实现:虚线代表“虚”无实体即还有很多东西需要自己去具体实现
  1. 实线-关联 | 虚线-依赖
    在这里插入图片描述

在这里插入图片描述
进一步解释

  • 虚线-依赖关系:临时用一下,若即若离,虚无缥缈,若有若无
  • 表示一种使用关系,一个类需要借助另一个类来实现功能
  • 一般是一个类使用另一个类作为参数或者是返回值

  • 实线-关联关系:关系稳定,实打实的关系
  • 表示一个类对象和另一个类对象有关联
  • 通常是一个类中有另一个类作为属性
  1. 空心菱形 - 聚合 | 实心菱形 - 组合
  • 菱形就是一个盛东西的器皿(例如盘子)
  • 聚合:代表空器皿里可以放很多相同的东西,聚在一起(箭头所指向的类
    • 整体和局部的关系,两者有独立的生命周期,是has a的关系
    • 弱关系
    • 消极的词:弱-空
  • 组合:代表满器皿里已经有实体结构的存在,生死与共
    • 整体和局部的关系,和聚合的关系相比,关系更加强烈。两者有相同的生命周期,contains-a的关系
    • 强关系
    • 积极的词:强-满
    • 常见数字表达及含义,假设有A类和B类,数字标记在A类侧
      • 0…1:0或1个实例
      • 0…*:0或多个实例
      • 1…1:1个实例
      • 1:只能有一个实例
      • 1…*:至少有一个实例
      • 1…2:如下图的鸟和翅膀的案例,代表一个鸟实例有两个翅膀实例
        在这里插入图片描述
        在这里插入图片描述

集合了全部类图表示方法
在这里插入图片描述

对象图
包图
  • 实现图
    • 组件图
    • 部署图
  • 剖面图
  • 复合结构图

行为式图形

强调系统模型中触发的事件

  • 活动图
  • 状态图
  • 用例图

交互式图形

属于行为式图形子集合,强调系统模型中资料流程

  • 通信图
  • 交互概述图(UML2.0)
  • 时序图(UML2.0)
  • 时间图(UML2.0)

时序图

UML时序图
Sequence Diagram:是显示对象之间交互的图,这些对象是按照时间顺序排列的。
时序图中包括的建模元素主要有:对象(Actor),生命线(LifeLine),控制焦点(Focus Of Control),消息(Message)等

可以看着理解一下
在这里插入图片描述

可以结合另一篇别人写的博客看看,加深理解。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值