阅读说明:本节主要是介绍UML基本概念,理论比较多,主要也是让大家对UML有一个初步的认识,后面还会陆陆续续的更新更多详细的UML开发应用学习文章。直接对接我们当下的开发。
内容一:UML概述?
1、UML概念?
UML (Unified Modeling Language)为面向对象软件设计提供统一的、标准的、可视化的建模语言。
2、UML定义?
分为两个部分:UML语义和UML表示法
2.1 UML语义:UML对语义的描述使开发者能在语义上取得一致认识,消除了因人而异的表达方法所造成的影响。
2.2 UML表示法:UML表示法定义UML符号的表示法,为开发者或开发工具使用这些图形符号和文本语法为系统建模提供了标准。
3、UML模型图构成?
分为三个部分
3.1 事物:UML模型中最基本的构成元素,是具有代表性的成分的抽象
3.2 关系:关系把事物紧密联系在一起
3.3 图:图是事物和关系的可视化表示
内容二:UML模型图构成?
1、UML事物?
UML包含4种事物:构件事物、行为事物、分组事物、注释事物
1.1 构件事物?
概念:UML模型的静态部分,描述概念或物理元素。
包含如下几种:
类:具有相同属性相同操作 相同关系相同语义的对象的描述(备注:就是在面向对象开发中类->Class)。
接口:描述元素的外部可见行为,即服务集合的定义说明(备注:就是在面向对象开发中接口->interface)。
协作:描述了一组事物间的相互作用的集合
用例:代表一个系统或系统的一部分行为,是一组动作序列的集合。
构件:系统中物理存在,可替换的部件。
节点:运行时存在的物理元素。
另外,参与者、信号应用、文档库、页表等都是上述基本事物的变体。
注意:我们软件开发中更多的是使用类和接口,使用频率最高。
1.2 行为事物?
概念:UML模型图的动态部分,描述跨越空间和时间的行为。
包含如下几种:
交互:实现某功能的一组构件事物之间的消息的集合,涉及消息、动作序列、链接。
状态机:描述事物或交互在生命周期内响应事件所经历状态序列。
1.3 分组事物
概念:UML模型图的组织部分,描述事物的组织结构
包含如下几种:
包:把元素组织成组的机制(备注:类似于Java开发中的package)。
1.4 注释事物
概念:UML模型的解释部分,用来对模型中的元素进行说明,解释。
包含如下几种:
注解:对元素进行约束或解释的简单符号(备注:类似于Java开发中的注视,每一个语言中都有注释)。
2、UML关系?
2.1 依赖关系:两个事物之间的语义关系,其中一个事物(独立事物)发生变化,会影响到另一个事物(依赖事物)。
2.2 关联关系:是一种结构关系,它指明一个事物的对象与另一个事物的对象间的联系。
2.3 泛化关系:是一种特殊/一般的关系。也可以看作是常说的继承关系。
2.4 实现关系:是类元之间的语义关系,其中的一个类元指定了由另一个类元保证执行的契约。也就是我们通常所说的Java实现接口(备注:iOS中经常说遵循协议或者实现协议)。
3、UML图?
UML图的种类总共分为8大类
3.1 用例图(Use Case Diagram)
概念:用例图是从用户角度描述系统功能, 是用户所能观察到的系统功能的模型图,用例是系统中的一个功能单元。
3.2 类图(Class Diagram)
概念:类图描述系统中类的静态结构。不仅定义系统中的类,表示类之间的联系如关联、依赖、聚合等,也包括类的内部结构(类的属性和操作)。类图是以类为中心来组织的,类图中的其他元素或属于某个类或与类相关联。
3.3 对象图(Object Diagram)
概念:对象图是类图的实例,几乎使用与类图完全相同的标识。他们的不同点在于对象图显示类的多个对象实例,而不是实际的类。
3.4 顺序图(Sequence Diagram)->又称时序图
概念一:顺序图显示对象之间的动态合作关系,它强调对象之间消息发送的顺序,同时显示对象之间的交互。
概念二:顺序图的一个用途是用来表示用例中的行为顺序。当执行一个用例行为时,顺序图中的每条消息对应了一个类操作或引起状态转换的触发事件。
3.5 协作图(Collaboration Diagram)
概念一:协作图描述对象间的协作关系,协作图跟顺序图 相似,显示对象间的动态合作关系。除显示信息交换外,协作图还显示对象以及它们之间的关系。
概念二:协作图的一个用途是表示一个类操作的实现。
3.6 状态图(State Chart Diagram)
概念:状态图是一个类对象所可能经历的所有历程的模型图。状态图由对象的各个状态和连接这些状态的转换组成。
3.7 活动图(Activity Diagram)
概念一:活动图是状态图的一个变体,用来描述执行算法的工作流程中涉及的活动。
概念二:活动图描述了一组顺序的或并发的活动。
3.8 构件图(Component Diagram)
概念:构件图为系统的构件建模型—构件即构造应用的软件单元—还包括各构件之间的依赖关系,以便通过这些依赖关系来估计对系统构件的修改给系统可能带来的影响。
备注:本篇文章基本上都是理论概念,但是希望读者对这些理论概念有一个初步认识,后续会对每一个理论概念进行一一分析,并且直接切入当下开发。欢迎每一位读者关注后续文章更新,同时大家有什么好的建议也可以提出来,我也会不断优化,方便大家学习提升。
Android开发技术分享5000人认证群653 9611 28,欢迎各位喜欢Android技术的同学一起交流学习!