uml基础案例与应用

分类

类图class:一组具有类似属性和共同行为事物
对象图object:一个类的实例,是具有具体属性值的具体事务
用例图use case:用户观点对系统行为的一个描述
状态图:一鼎食客,一个对象除以某一特定状态.--转换--
顺序图:基于时间的动态交互
活动图:按照时间流程等进行的动作
协作图:多功能工作.(顺序图和协作图合称交互图)
构件图:现代软件开发基于构件,使用尖括号表示
部署图:基于计算机系统的物理体系结构
其他:注释note/关键字keyword/构造型stereotype是在现有基础上改造,用书名号表示
uml2.0新图:
    组成结构图composite structure diagram
    交互纵览图interaction overview diagram
    计时图timing diagram
    有创新也有保留的包图

面向对象

抽象/继承/多态/封装.......消息传递/关联/聚集
抽象:过滤掉对象一部分特征和操作,只剩下你需要的属性和操作
集成:子类具有父类的属性和方法,又有独特的属性和操作
多态:不同类具有相同名称的操作,每个类都知道自己如何执行这个操作
封装:一个对象执行自己操作时,他对外界隐藏了操作的细节(信息隐藏/提供接口)

关系

关联

指向/互相/多(and)对一/一对多(list)/一对多(or)
关联类
链:关联的实例

多重性

一对一/一对多/一对一或多/一对零或一/一对有限间隔/一对n/一对一组
*代表多many
..代表或or(我认为写错了,..是范围)
,也代表or

限定关联

简单说就是把他人的id保存到表里

自身关联

同类父子?

继承(这里允许多继承)实线空心三角

子类=is a kind of
没有父类就是基类/根类
无子类就是叶类

多态

多态其实一般来讲是说同一个父类(接口)的不同子类之间的同名不同状态
我原来以为是子父类之间...

抽象类

没有具体的作用,但是是一类类的父类,子类可以具体实现方法,抽象类不产生实例对象

依赖虚线箭头

不同类之间的调用

聚集和组成

都构成一个整体
聚集是弱类型(可拆卸,电脑)空心菱形,聚集是这个整体和部分的关联,多对多
组成是强类型(不可分割,桌子/衣服)实心菱形,一对多

接口虚线空心三角

注意与抽象类的区别
方法中+表示公有可见,#表示受保护可见,-表示私有可见

用例 use case

需要的功能及可付出的代价的妥协
站在使用者的角度描述功能及需求
用例的复用叫做包含用例
用例是一组场景的集合

顺序图

对象用矩形框表示,带下划线的是对象名,消息用实线箭头表示,时间用垂直虚线.
顺序图里边包含了逻辑判断的所有情况

用例图

用例是一组场景的集合,每个场景是一个步骤序列
用例之间关系:包含/扩展/泛化/分组

状态图

类图/对象图表示一个系统或至少一组类/对象/用例,而状态图只是对单个对象建立模型.
展示的是一个对象所处可能状态以及状态之间的转变
顺序子状态和并发子状态

协作图

展示对象之间的交互关系和消息的传递
与顺序图语意等价,顺序图按时间顺序布图,协作图按空间组织布图

转载于:https://www.cnblogs.com/robsky/p/8251847.html

目录: 第一部分 基础知识 第1章 UML简介 3 1.1 在纷繁复杂中寻求解决问题的办法 3 1.2 UML的诞生 4 1.3 UML的组成 5 1.3.1 类图 5 1.3.2 对象图 6 1.3.3 用例图 7 1.3.4 状态图 7 1.3.5 顺序图 8 1.3.6 活动图 9 1.3.7 协作图 10 1.3.8 构件图 11 1.3.9 部署图 11 1.4 其他特征 12 1.4.1 注释 12 1.4.2 关键字和构造型 12 1.5 UML 2.0中的新图 13 1.5.1 组成结构图 13 1.5.2 交互纵览图 14 1.5.3 计时图 15 1.5.4 有创新也有保留的包图 15 1.6 为什么需要这么多种图 16 1.7 这不仅仅是一系列图 16 1.8 小结 17 1.9 常见问题解答 17 1.10 小测验和习题 18 1.10.1 小测验 18 1.10.2 习题 18 第2章 理解面向对象 20 2.1 无处不在的对象 20 2.2 一些面向对象的概念 22 2.2.1 抽象 22 2.2.2 继承 23 2.2.3 多态性 24 2.2.4 封装 24 2.2.5 消息传递 25 2.2.6 关联 26 2.2.7 聚集 27 2.3 意义 28 2.4 小结 29 2.5 常见问题解答 29 2.6 小测验和习题 30 第3章 运用面向对象 31 3.1 类的可视化表示 31 3.2 属性 32 3.3 操作 33 3.4 属性、操作和可视化表达 34 3.5 职责和约束 35 3.6 附加注释 36 3.7 类——应该做什么和如何识别它们 37 3.8 小结 39 3.9 常见问题解答 39 3.10 小测验和习题 39 3.10.1 小测验 39 3.10.2 习题 40 第4章 关系 41 4.1 关联 41 4.1.1 关联上的约束 42 4.1.2 关联类 43 4.1.3 链 43 4.2 多重性 43 4.3 限定关联 45 4.4 自身关联 45 4.5 继承和泛化 46 4.5.1 找出继承关系 47 4.5.2 抽象类 48 4.6 依赖 48 4.7 类图和对象图 49 4.8 小结 50 4.9 常见问题解答 51 4.10 小测验和习题 51 4.10.1 小测验 51 4.10.2 习题 51 第5章 聚集、组成、接口和实现 53 5.1 聚集 53 5.2 组成 54 5.3 组成结构图 54 5.4 接口和实现 55 5.5 接口和端口 58 5.5.1 可见性 58 5.5.2 作用域 59 5.6 小结 59 5.7 常见问题解答 60 5.8 小测验和习题 60 5.8.1 小测验 60 5.8.2 习题 60 第6章 介绍用例 61 6.1 什么是用例 61 6.2 用例的重要性 62 6.3 举例:饮料销售机 62 6.3.1 用例“买饮料” 62 6.3.2 其他用例 63 6.4 包含用例 64 6.5 扩展用例 65 6.6 开始用例分析 66 6.7 小结 66 6.8 常见问题解答 66 6.9 小测验和习题 67 6.9.1 小测验 67 6.9.2 习题 67 第7章 用例图 68 7.1 用例模型的表示法 68 7.1.1 回顾饮料销售机 69 7.1.2 跟踪场景中的步骤 69 7.2 用例之间关系的可视化表示 70 7.2.1 包含 70 7.2.2 扩展 71 7.2.3 泛化 72 7.2.4 分组 73 7.3 用例图在分析过程中的作用 73 7.4 运用用例模型:举例 73 7.4.1 理解领域 73 7.4.2 理解用户 74 7.4.3 理解用例 75 7.4.4 进一步深入 76 7.5 “清查存货” 77 7.5.1 结构元素 77 7.5.2 关系 77 7.5.3 分组 78 7.5.4 注释 78 7.5.5 扩展 78 7.5.6 其他 78 7.6 UML“大图” 78 7.7 小结 79 7.8 常见问题解答 79 7.9 小测验和习题 79 7.9.1 小测验 80 7.9.2 习题 80 第8章 状态图 81 8.1 什么是状态图 81 8.1.1 基本符号集 82 8.1.2 在状态图标中增加细节 82 8.1.3 增加转移的细节:事件和动作 83 8.1.4 增加转移的细节:保护条件 84 8.2 子状态 84 8.2.1 顺序子状态 84 8.2.2 并发子状态 85 8.3 历史状态 86 8.4 UML 2.0中的新变化 86 8.5 为什么状态图很重要 87 8.6 UML“大图” 87 8.7 小结 88 8.8 常见问题解答 89 8.9 小测验和习题 89
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值