浅谈UML——九种图(二)
来源:互联网 发布:项羽虞姬 知乎 编辑:程序博客网 时间:2024/06/14 06:10
前言
看我UML视频,对UML图有了一定的了解,终于明白了,为什么一幅图代表了千言万语。每一种图都有其特殊的存在,都在软件开发过程中起了至关重要的作用。那么如何阅读?如何绘制?请看下去:
1 行为图
用来描述系统的动态模型和对象之间的关系。
1.1 状态图
类定义了对象的共性,每一个对象实例则表述了个性,状态描绘了对象的动态生命周期。举个例子:“人”就是一个类,而“你”“我”“他”等都是“人”这个类的一个实例,“站着”“躺着”等都是对象的一个状态,从不同角度描述,就可能有多种状态。 在对象整个周期中,它的状态是会发生变化的,而状态就是指在对象生命周期中满足某些条件、执行某些活动或等某些事件的一个条件和状况。
1.2 活动图
活动图强调了活动到活动的控制流,是一种表述过程机理、业务 过程以及工作流的技术 ,它可以用来对业务过程、工作流建模,也可以对用例实现甚至是程序实现来建模。它可以用来和传统的流程图相比,十分相似。但它与流程图的主要区别在于,活动图能够支持并发行为。
1.3 交互图
1.3.1 顺序图(时序图)
描述了按照时间的先后顺序对象之间交互动作过程。主要强调消息的时间顺序,首先把参与交互的对象放在图的上方,沿X轴方向排列。通常把发起交互的对象放在左边,教下级对象依次放在右边。然后把这些对象发送和接收的消息沿着Y轴方向按时间顺序从上到下放置,方便阅读。
1.3.2 合作图(协作图)
协作图强调参加交互的对象的组织,在协作图中,首先将参加交互的对象作为图的顶点,然后用这些对象之间的边线表示为图的边,再使用对象发送和接收的消息来修饰这些边。
顺序图和协作图对比
1、协作图可以看到组织关系。
2、顺序图可以看到生命周期。
3、侧重点不同。
a、顺序图侧重时间顺序。
b、协作图侧重对象之间的关系。
1、二者在语义上等价。
2、二者可以相互转化。
2 实现图
2.1 构件图
在面向对象软件开发范型中,类是最为基础的“模块化”元素,它封装了属性和成员方法,就像是物理世界的“分子”。但是,对于复杂的软件系统来说,往往拥有成百上千的各种类,因此,对于系统理解而言、复用而言,类的粒度太小了,因此引入了一个较粗粒度概念——“构件”,是一种泛指概念。
2.2 部署图
部署图和构件图都是对系统的物理方面建模的重要手段,它们之间最大的不同在于:构件图用来帮助开发人员了解系统的物理组织结构,部署图则用来帮助安装、部署人员掌握系统的拓扑结构。部署图的粒度比构件图的粒度大。
结语
通过学习UML,对面向对象的建模有了一定的了解,UML是我们从业余向专业的一个转折点,深刻的明白了,图的重要性,对于以后的C#、设计模式的学习有了一定的帮助。接下来加油!菜鸟一枚,如若有不合适的地方,望大神斧正!
若安好,便是晴!
- 浅谈UML——九种图(二)
- 浅谈UML——九种图(一)
- 重中之重—浅谈UML九种图(三)
- thinking in UML(二)——UML核心元素
- uml视频系列(二)——uml的概述
- uml视频系列(二)——uml的概述
- UML九种图(二)——交互图
- UML(二)——关系
- UML(二)——交互图
- UML图(二)——类图
- UML——类图(二)
- UML总结(二)——TheEnd
- UML学习(二)——类图
- UML基础(二)——UML中的类(接口)以及类关系的表示方法
- Thinking in UML 学习笔记(二)——UML核心视图之用例图
- UML基础(二)——UML中的类(接口)以及类关系的表示方法
- 设计模式解析(二)——UML
- 机房重构——UML图(二)
- Sort
- leetcode Next Permutation
- Appium对于xpath 查找元素慢的原因
- 14个Xcode中常用的快捷键操作
- 数字证书原理
- 浅谈UML——九种图(二)
- 数据包接收系列 — IP协议处理流程(一)
- OpenFileDialog.ShowDialog() 提示 未处理 accesViolatinException 尝试读取或写入受保护的内存。这通常指示其他内存已损坏。
- vim中文编码 行号显示等设置
- encrypt 加密解密
- Android 手机振动功能实现
- C提高(4):
- 怎样才是理想的程序员
- jdbc连接postgresl需要指明特定模式