UML总结之——UML的结构

来源:互联网 发布:各种软件 编辑:程序博客网 时间:2024/06/06 02:25

上次的博客主要是认识了一下UML到底是什么,对他有了一个大概的了解,不至于一头雾水,在此之前我们还是回顾一下UML到底是什么吧(尽管理论始终是那样的枯燥,但是这也是权宜之计,总得认识他才行啊)

言归正传,那上次讲的UML到底是什么呢?请看:

UML是一种可视化的面向对象建模语言。它描述了一个系统的静态结构和动态行为。用图形方式表现典型的面向对象系统的整个结构。从不同的角度为系统建模,并形成系统的不同视图。这些图包括:类图(它以继承结构、关联、组成和聚集为特色)、时序图、协作图和状态图等。话不多说直接上图:


当然了这些图是对UML视图的总结,但是UML不仅仅是视图它还包括了许多其他的图,在下面我将为大家一一阐述。


内容

一、写在前面

本次的内容主要是关于UML的结构进行总结,这在一定的程度上是一个很重要的内容,因为我们知道在UML中图是非常重要的内容,可以说是UML的精华所在,所以其重要性不言而喻,很不幸的是在UML的结构中恰恰包含了这些内容,这是一个全面了解UML的内容,至于详细的了解内容我会在以后的文章做仔细的总结,欢迎大家来围观。

在进行内容的总结之前还是按我们的老规矩——上图(这年头就是一言不合就上图,谁让一张图胜过千言万语呢)



上图使得我们对UML的结构有了一个宏观上的把控,那么接下来的就对其进行细致化的阐述了(虽然下面的内容有点枯燥但是,这也是一个必须经历的过程)


二、正文

(一)、基本构造块

如果把UML结构比作一个帮派,这里我们姑且将它命名为UML帮,那么在这个帮派中基本构造块以其绝对的实力和掌握的秘诀来说无疑成为这个帮派中的一帮之主,谁让人家实力在那里呢,仅基本构造块中的事物就有四大类共是一种之多,分别是结构事物(7种)、行为事物(2种)、分组事物(1种)、注记事物(1种)怎么样牛吧,为了让大家更加清楚的认识到这个基本构造组织那耸人听闻的实力我们用一张图来粗略了解一下这个牛X组织的结构:



综上所述帮主之位非基本构造块莫属,那么接下来就让我们进入这个牛叉的组织,一探究竟吧:

在UML的基本构造块中有三种构造块,分别是事物、关系、图。他们的具体内容如下:

1)事物(Things): 构成模型图的一些基本图示符号.它们表示一些面向对象的基本概念。

2)关系(Relationshlps):表示基本图示符号之间的关系。

3)图(Diagrams),特定的视角对系统所作的抽象描述

三者关系:事物是对模型中最具代表性的成分的抽象,关系把事物结合在一起;图聚集了相关的事物


其中事物有有如下的内容:

1)  UML中的事物:结构事物(7种)、行为事物(2种)、分组事物(1种)、注记事物(1种)

 结构事物:因为结构事物组织强大,这里就不一一阐述了。

行为事物:

行为事物是UML模型的动态部分。它们是模型中的动词,描述了跨越时间和空间的行为共有两类主要的行为事物。分别是:

         1、交互(1nteraction)

交互这样一种行为,他由在特定语境中共完成一定特定任务的一组对象之间交换的消息组成.一个对象群体的行为或单个操作的行为可以用一个交互来描述。Interaction涉及一些其他元素,包括消息、动作序列

         2状态机(statemachine):

状态机是这样一种行为.描述了一个对象或一个交互在生命期内响应事件所经历的状态序列单个类或一组类之间协作的行为可以用状态机来描述。一个状态机涉及到一些其他元素,包括状态转换(从一个状态到另一个状态的事物)和活动(发转换的事物)和活动(对一个转换的响应)。

 

分组事物

分组事物是UML模型的组织部分,最主要的分组事物是包(package)包是把元素组织成组的机制

包是UML中唯一的组织机制,包可以拥有其他元素,这些元素可以是类、接口、构件、节点、协作、用例和图,甚至可以是其他包。一个包形成了一个命名空间。在一个包中同一种元素的名称必须是唯一的。不同种类的元素可以有相同的名称。

 

注释事物

注释事物是UML模型的解释部分。这些注释事物用来描述、说明和标注模的任何元素。有一种主要的注释事物,称为注解《note)。注解《note)是一个依附于一个元素或一组元素之上,对它进行约束或解释的简单符号


介绍完事物之后我们来认识一下UML中的关系:

  UML中的关系:

关联关系(Association):描述了两个或多个类之间的结构性关系

依赖关系(Dependency)

泛化关系(Generalization):泛化是种特殊/一般关系,特殊元素(子元素)的对象替代一般元素(父元素)的对象。用这种方法,子元素共享了父元素的结构和行为。

实现关系(RealiZation):实现是类元之间的语义关系,在该关系中一个类元描述了另一个类元保证实现的契约。


下面就是基本构造块中的练家子——图,之所以说它是练家子是因为人家是常年上手绘出招式图,我们继续,在UML基本构造块中的图是一个非常严谨的组织请看:


UML中的图
UML表示机制的层次结构:
1.用例图:(use case  diagrams)用来描述用户的需求,从用户的角度描述系统功能,系并指出各功能的执行者,强调谁在使用系统,系统为执行这个完成那些功能。
2.类图
3.行为图:用来描述系统的动态模型和对象之间的交互关系,包括下面的这些图:
3.1.状态图:(Statechart diagrams)用来描述类的对象所有可能的状态以及事件发生时状态的转移条件
3.2.活动图:(Activity diagrams)用来描述满足用例要求所要求要进行的活动以及活动间的约束关系,使用活动图有利于识别系统的并行活动
3.3.交互图:用来描述对象之间的交互关系,包括:
3.3.1序列图(sequence diagrams):描述对象之间的交互顺序,着重体现对象间息的时间顺序,强调对象之间消息的发送顺序,同时也显示对象之间的交互过程。
3.3.2协同图(collaboration diagrams):描述对象之间的合作关系,更侧重于说明哪些对之间有消息的传递。
·注意:序列图和协作图可以相互转化。



4.实现图
4.1.组件口又称构件图:(component diagrams):构件图用来描述代码构件的物理结构以及各构件之间的依倾关系。一个构件可以使一个资源文件、一个二进制文件或者一个可执行文件。

4.2.引用图:实施图(deployment diagrams):部署图定义了系统中硬件的物理休系结构,用来描述实际的物理设备以及它们之间的连接关系。


综上所述基本构造块是UML帮中当之无愧的帮主,真的是实至名归。


(二)、UML中的规则

在介绍完UML中的帮主之后我们接下来了解一下他的管家——UML规则,一个好的帮派一定离不了好的组织纪律正所谓无规矩不成方圆,UML中同样如此,我们

不能简单地把UML的构造块按随机的方式放在一起。像任何语言一样,UML有一套规则这些规则描述了一个结构良好的模型看起来应该像什么。UML也有用于描述如下事物的语义规则,而它的规则就是他们的组织纪律:

.  命名为事物、关系和图起名
.范围给一个名称以特定含义的语境
.可见性怎样让其他人使用或看见名称
.完整性事物如何正确、一致地相互联系
.执行运行或模拟动态模型的含义是什么


(三)、UML中的公共机制

当我们名正言顺,并且有一个强大的组织之后,我们想要的就是如何更好的发展自己的组织,让它变得更加富有生机与活力,而这恰恰离不了UML的公共机制。就让我们走进这个公共机制吧

UML中的公共机制有四个放面分别是:

1、规格说明
2、修饰
3、通用划分
4、扩展机制

其具体内容如下:

规格说明

UML不只是种图形语言。实际上,在它的图形表示法的每部分背后都有一个规格说明,个规格说明提供了对构造块的语法和语义的文字叙述。UML的图形表示法用来对系统进行可视化;UML的规格说明用来描述系统的细节。规格说明提供了一个语义底版,它包含了一个系统的各模型的所有部分,并且各部分相互联系,并保持致。因此,UML图只不过是对底版的简单视觉投影,每一个图展现了系统的一个特定的方面。


修饰
UML表示法中的每一个元素都有一个基本符号,可以把各种修饰细节加到这个符号上。
通用划分
类/对象二分法(class/object dichotomy)类是一个抽象;对象是该种抽象的一个具体形式。UML的每一个构造块几乎都存在像类/对象这样的二分法。例如:用例和用例实例(场景),构件和构件实例,节点和节点实例等.


接口/实现二分法(interfac/realization dichotomy)
接门户明了个契约,而实现则表示了对该契约的具体实施,它负贵如实从实现接口的完整语义。几乎任一个UML的构造块都有像接口/实现这样的二分法。
·例如:用例和实现它们的协作,操作和实现它们的方法。


扩展机制:对UML图示符号的扩展。包括构造型(Stereotype)、标注型(Tagged  value)、约束(Constraint)如图:



总结:

在对UML有了一个全面的了解之后,我们不难看出基本构造块是其最重要的部分,里面是UML的精华所在,所以在总结的时候详细了一点,当然作为UML的九种图更是重中之重,所以在接下来的总结中我将会对图进行详细的总结。


未完待续...........






0 0
原创粉丝点击