UML 是一种可视化的面向对象建模语言
UML 描述了一个系统的静态结构和动态行为
UML 用图形方式表现典型的面向对象系统的整个结构
UML的基本构造块 事物,关系,图
事物 构成模型图的一些基本图示符号,他们表示一些面向对象的基本概念
关系 表示基本图示符号之间的关系
图 特定的视角对系统所做的图像描述
结构事物静态1Class类 2接口3协作4用例5主动类6构件7节点
类 是对一组具有相同属性、方法、关系和语义的对象的描述。一个类实现一个或多个接口
接口 描述了一个类或构建的一个服务集。接口仅仅是定义了一组操作的规范。它并没有给出这组操作的具体实现
协作:定义了一个交互。它是由一组共同工作以提供某协作的角色和其他元素构成的群体,这些协作行为大于所有元素的各自行为的总和。因此,协作有结构、行为和维度。一个给定的类可以参与几个协作。
用例 对一组动作序列的描述,系统执行这些动作将产生一个对特定的参与者有价值且可观察的结果
主动类 其对象至少拥有一个进程或线程,因此它可以启动控制活动
构件 是系统中物理的、可替代的部件,它遵循且提供一组接口的实现
节点 是在运行时存在的物理元素,它表示了一种可计算的资源、它通常至少有一些记忆能力处理能力。一个构件集可以驻留一个节点内,也可以从一个节点迁移到另一个节点。
行为事物动态1交互2状态机
交互,他是在特定语境中共同完成一定特定任务的一组对象之间交换的消息组成。一个对象群体的行为或单个操作的行为可用一个交互来描述 、
状态机 描述了一个对象或一个交互在生命期内响应时间所经历的状态序列。单个类或一组类之间协作的行为可以用状态机来描述。一个状态机涉及到一些其他元素。包括状态转换时间和活动。
分组事物 包
包是UML中唯一的组织机制。 可以拥有其他元素,这些元素可以是类、接口、构件、节点等
一个包形成了一个命名空间。 在一个包中同一种元素的名称必须是唯一的。不同种类的元素可以有相同的名称
注记事物 注释
关系
关联 描述了两个或多个类之间的结构性关系
依赖 前者可以使用后者
泛化 是一种特殊一般关系,是一种替代,子元素替代父元素。子元素共享父元素的结构的
实现 是类元之间的语义关系,在该关系中一个类元描述了另一个类元保证实现的契约
UML九种图
1用例图 Use case 用来描述用户的需求,从用户的角度描述系统的功能,并指出各功能的执行者,强调谁在使用系统,系统为执行者完成哪些功能
2静态图
类图class diagrams 用于定义系统中的类,包括描述类的内部结构和类之间的关系。类图主要用于描述系统的静态结构
对象图 diagrams
对象图是类图的一个实例,描述了系统在具体时间上所包含的对象以及各个对象之间的关系
3行为图:用来描述系统的动态模型和对象之间的交互关系
状态图 用来描述类的对象所有可能的状态以及事件发生时状态的转移条件
活动图 用来描述满足用例要求所进行的活动以及活动间的约束关系,使用活动图有利于识别系统的并行活动
交互图
序列图 描述对象之间的 交互顺序,这种体现对象之间消息传递的事件顺序,强调对象之间消息的发送顺序,同时也显示对象之间的交互过程
协作图
描述对象之间的合作关系,更侧重于说明哪些对象之间有消息的传递
序列图和协作图可以相互转化
4实现图
构件图:用来描述代码构件的物理结构以及各构件之间的依赖关系。一个构件可以使一个资源文件、一个二进制文件或者一个可执行文件
实施图:部署图定义了系统中硬件的物理体系结构用来描述实际的物理设备以及他们之间的连接关系