iOS 笔记

UML使用简明教程

2018-12-26  本文已影响12人  SunshineBrother

UML(Unified Modeling Language,统一建模语言)是一个支持模型化和软件系统开发的图形化语言,为软件开发的所有阶段提供模型化和可视化支持,包括由需求分析到规格,到构造和配置。我们今天就来学习一下UML建模。

StarUML

开始之前我们肯定需要先下载StarUML工具,可以下载破解版。我们打开下载好的StarUML,我们先来介绍一下怎么使用StarUML

安装之后的主界面简介如图所示:

UML.jpg

1、选择模块

在右边的Model Explorer框中选定Untitled模块。通过Model主菜单,或右击选定的模型,可以Add/Design Model

UML2.png

我们点击model可以设置这个模块的名称

UML3.png

2、toolbox

在StarUML中默认打开的“toolbox”工具中就是类相关的一下基础功能组件,以及组件的功能简介基础组件中有类实例,以及描述类的各个功能组件。如图所示。

UML1.png

类与类之间的关系

类图: 类图是面向对象系统建模中最常用和最重要的图,是定义其它图的基础。类图主要是用来显示系统中的类、接口以及它们之间的静态结构和关系的一种静态模型。
类图的3个基本组件:类名、属性、方法。
类的几个主要关系:实现,关联,泛化,聚合,组合,依赖

1、泛化关系

泛化(generalization):说白了就是继承关系

例子:子类(men)继承父类

泛化.png

StarUML使用步骤1:

StarUML使用步骤2:

双击Class类会出现操作按钮

泛化1.png

功能介绍:

2、实现关系

实现关系(realization):在Java中类似于接口,在iOS中类似于协议

例子:AppDelete实现applicationDidFinishLaunching()协议

实现关系.png

在模型视图区域右键 --》 add --》 insterface(添加协议) --》 add --》operation(添加方法)

3、依赖关系

依赖关系(dependency):已知A类和B类,在A类中引用了B类,这种关系是偶然性、临时性,同时B类中发生了变化,影响到A类,这种关系就称之为依赖关系。

例子:我到超市买东西,我买了东西,超市收入增加,超市收入的增加跟我买东西有一定的依赖关系

依赖关系.png

4、关联关系

关联关系可以分为两大类

关联关系是一种比较强的依赖

例如:人喝水,这是单向关联
用户和订单(用户保存订单号,订单对应用户) ,这是双向关联

关联关系.png

5、聚合关系

聚合关系(Aggregration):聚合关系是关联关系的特例,强调整体和部分,整体和部分可以分离,各自有各自的生命周期,互不干扰,部分强调共享

例如:电脑和电池、手机和电池

聚合关系.png

6、组合关系

组合关系(Composition):强调整体和部分,整体和部分不可以分离,共享生命周期,整体生命周期结束意味着部分生命周期结束

例如:公司和部门

组合关系.png

UML建模模型图

常见的模型图有

1、用例图(Use Case Diagram)

用例图是从用户角度描述系统功能, 是用户所能观察到的系统功能的模型图,用例是系统中的一个功能单元;

用例图列出系统中的用例和系统外的参与者,并显示哪个参与者参与了哪个用例的执行
(或称为发起了哪个用例)。

用例图多用于静态建模阶段(主要是业务建模和需求建模)。

主要有两个概念

用例图.png

StarUML使用步骤

用例图1.png

2、类图(Class Diagram)

类图以反映类的结构(属性、操作)以及类之间的关系为主要目的,描述了软件系统的结构,是一种静态建模方法

类图中的“类”与面向对象语言中的“类”的概念是对应的,是对现实世界中的事物的抽象
从上到下分为三部分,分别是类名、属性和操作。类名是必须有的

注意:属性和方法修饰符
+表示public修饰符
-表示private修饰符
#表示protected修饰符

StarUML使用步骤

类图.png

3、顺序图(时序图)(Sequence Diagram)

顺序图用来表示用例中的行为顺序。当执行一个用例行为时,顺序图中的每条消息对应了一个类操作或状态机中引起转换的事件。
顺序图展示对象之间的交互,这些交互是指在场景或用例的事件流中发生的。 顺序图属于动态建模。
顺序图的重点在消息序列上,也就是说,描述消息是如何在对象间发送和接收的。表示了对象之间传送消息的时间顺序。
浏览顺序图的方法是:从上到下查看对象间交换的消息。

时序图主要包含

简单发送消息

时序图1.png

下面这个是微信支付的时序图

时序图.png

文中UML下载地址

上一篇 下一篇

猜你喜欢

热点阅读