UML入门

###UML概述 ####UML简介 UML (Unified Modeling Language)为面向对象软件设计提供统一的、标准的、可视化的建模语言。适用于描述以用例为驱动,以体系结构为中心的软件设计的全过程。

UML的定义包括UML语义和UML表示法两个部分。

  1. UML语义:UML对语义的描述使开发者能在语义上取得一致认识,消除了因人而异的表达方法所造成的影响。
  2. UML表示法:UML表示法定义UML符号的表示法,为开发者或开发工具使用这 些图形符号和文本语法为系统建模提供了标准。

####UML模型图的构成

  1. 事物(Things):UML模型中最基本的构成元素,是具有代表性的成分的抽象
  2. 关系(Relationships):关系把事物紧密联系在一起
  3. 图(Diagrams ):图是事物和关系的可视化表示

###UML关系 图例使用astah软件绘制

1. 泛化 Generalization:

子类继承父类的关系
泛化 Generalization

2. 实现 Relization:

子类实现协议或者接口
实现 Relization

3. 依赖 Dependency:

A类中应用了B类,这种关系具有偶然性和临时性,同时B类发生的变化会影响到A类
依赖 Dependency

4. 双向关联 Association:

一种特殊的依赖关系,比较强的依赖关系,一方依赖另一方
集合映射的情况:
1:单个
0..1:单个或者没有
1..:至少一个
0..
:0个或者多个
*:任意个
双向关联 Association

5. 单向关联 Directed Associated:

一种特殊的依赖关系,比较强的两者互为依赖关系
关联 Association

6. 聚合关系 Aggregation:

一种特殊的依赖关系,整体和部分的关系,各自有各自的生命周期,互不干扰,部分强调共享
eg:电脑和电池的关系,电池是共享的,电池也有自己的生命周期
聚合关系 Aggregation

7. 组合关系 Composition:

一种特殊的依赖关系,整体和部分的关系,部分依赖于整体,不能独立于整体存在
eg.公司和部门
组合关系 Composition

###常用的UML ####类图

  • 属性的定义:
    <属性访问权限> <属性名> : <属性类型>
  • 属性访问权限定义:
    public:+
    protected:#
    package:~
    private:-
  • 定义一个私有的String类型的name属性:
- name : String
  • 方法的定义:
    <方法访问权限> <方法名>([方法参数列表]) : <方法的返回值>
  • 方法访问权限定义:
    public:+
    protected:#
    package:~
    private:-
  • 定义一个公有的makeSound方法:
+ makeSound() : void

泛化 Generalization

####用例图
用例图是从用户角度描述系统功能, 是用户所能观察到的系统功能的模型图,用例是系统中的一个功能单元

  • 参与者与用例之间的关系

关联: 表示参与者与用例之间的交互,通信途径。 (关联有时候也用带箭头的实线来表示,这样的表示能够显示地表明发起用例的是参与者。)

  • 用例之间的关系

包含< > :箭头指向的用例为被包含的用例,称为包含用例;箭头出发的用例为基用例。包含用例是必选的,如果缺少包含用例,基用例就不完整;包含用例必须被执行,不需要满足某种条件;其执行并不会改变基用例的行为。
扩展< > :箭头指向的用例为被扩展的用例,称为扩展用例;箭头出发的用例为基用例。扩展用例是可选的,如果缺少扩展用例,不会影响到基用例的完整性;扩展用例在一定条件下才会执行,并且其执行会改变基用例的行为。

  • 参与者之间的关系

泛化:发出箭头的事物“is a”箭头指向的事物。泛化关系是一般和特殊关系,发出箭头的一方代表特殊的一方,箭头指向的一方代表一般一方。特殊一方继承了一般方的特性并增加了新的特性。 用例图

####时序图

  • 顺序图用来表示用例中的行为顺序。当执行一个用例行为时,顺序图中的每条消息对应了一个类操作或状态机中引起转换的事件。
  • 顺序图展示对象之间的交互,这些交互是指在场景或用例的事件流中发生的。 顺序图属于动态建模。
  • 顺序图的重点在消息序列上,也就是说,描述消息是如何在对象间发送和接收的。表示了对象之间传送消息的时间顺序。
  • 浏览顺序图的方法是:从上到下查看对象间交换的消息。

以微信支付为例的一个时序图:
时序图

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值