基本概念
对象
属性(数据)+ 方法(操作) + 对象 ID
类
- 实体类:映射需求中的实体,保存需要存储的信息
- 控制类:控制用例工作的类,一般由动宾结构的短语转化。如:身份验证器
- 边界类 :用于封装在用例内、外流动的信息或数据流。接口
UML图概念
分类
类与对象 接口与实现
结构事物
最静态的部分,包括接口、类、用例、构件、节点
行为事物
代表时间和空间上的动作。交互、状态机
分组事物
组织部分,包和构件
注释事物
解释部分
UML 分类
静态图
- 类图:一组类、接口、协作和他们之间的关系
- 对象图:一组对象及它们关系
- 构件图:一个封装的类和它的接口
- 部署图:软硬件之间映射
- 制品图:系统的物理结构
- 包图:由模型本身分解而成的组织单元,及它们的依赖关系
动态图
- 用例图:系统与外部之间的交互
- 交互图
- 顺序图:强调时间顺序
- 通信图
- 定时图:时间
- 活动图:类似于流程图
- 状态图:状态
UML关系
包含关系
flowchart LR A[学生] --> B(学习) A --> C(测验) C -.->|include|D(权限检查) B -.->|include|D
提取出来的公共用例称为抽象用例 原始用例称为基本用例
泛化关系
flowchart TD A[用户] --> B(登录) C(手机号登录) --> B D(用户名密码登录) -->B
父子关系
扩展关系
flowchart LR A[用户] --> B(看视频) C(冲会员) -.->|extend| B
一个基本用例和多个扩展用例
类图对象图关系
- 依赖关系:一个事物变化影响另一个事物
- 泛化关系:特殊/一般关系
- 关联关系:一组链,链是对象之间的连接
- 聚合关系:整体与部分生命周期不同
- 组合关系:整体与部分生命周期相同
- 实现关系:接口与类之间的关系
继承关系
- 取代继承:子类可以替换父类,但子类能力通常与父类相同或兼容,并不强调添加新内容导致能力扩展
- 受限继承:子类继承父类,但限制了某些功能,导致子类能力小于父类
- 特化继承:子类完全继承父类的所有特性,并在此基础上添加新的特性或修改行为,从而使子类能力大于等于父类
- 包含继承:子类包含父类所有特性,但更侧重于类型包含或子类型关系(如接口继承),并不强调添加新内容