软件工程实践|第三章 面向对象方法与UML建模语言|学习笔记

一、面向对象方法概述

1、面向对象=对象+类+继承+消息
2、面向对象分析方法主要建立三种模型:
(1)功能模型;(2)对象模型;(3)动态模型

二、UML概述

前导知识

UML:Unified Modeling Language 统一建模语言,一种面向对象的建模语言
构成: 视图、图、模型元素、公共机制

UML的模型构成
p.s. 下面展示的图很重要,理不清的所属关系时看一眼
UML组成结构图

【补充】
1、公共机制➡扩展机制,包括:
①构造型《》
②标记值{=}
③约束{<约束语句>}
2、模型元素➡关系➡关联关系,包括:
①聚合(部分与整体)
②组合(强类型的聚合)
p.s.在画图中,关系对应的箭头在后面会进行详细说明

1、UML视图

由一个或多个图组成的对系统某个角度的抽象
系统模型由多个视图来共同描述
包括:
用例视图(核心视图)
逻辑视图(设计视图)
过程视图(并发视图)
实现视图(组件视图)
配置试图(部署视图)

(1)用例视图
描述系统的外部特性及系统应具备的功能
(2)逻辑视图
描述用例视图中提出的系统功能的实现,关注系统内部结构
(3)过程视图
显示系统内部控制机制,并发工作状态(非功能性质方面)
(4)实现视图
系统的实现特征,由独立的组件(文件)构成
(5)配置视图
显示系统的物理框架(服务器、交换机、网线等)

2、UML图

用来描述一个视图的内容,是构成视图的成分
UML中有九种图:用例图(∈用例视图)
类图、对象图(∈逻辑视图)
序列图、协作图、状态图、活动图(∈过程视图)
构件图(∈实现视图)
部署图(∈配置视图)

如果加上一个”非正式“的包图,十个图还可以进行另一种分类

用例图
静态图(类图、对象图、包图)
行为图(状态图 、活动图)
交互图(顺序图、协作图)
实现图(组件图、配置图)

3、UML模型元素

构成图的最基本元素,每一个模型元素都有与之对应的元素符号
包括:事物、UML中的关系

(1)事物

模型中的静态部分)
分为:结构事物、行为事物、分组事物、注释事物
结构事物:名词,描述概念或物理元素
行为事物:动词,一种行为描述
分组事物:容器,用于组织模型
注释事物:解释,相当于代码中的注释语句

①结构事物
包括7种类型:
类、接口、协作、用例、活动类、组件、结点

②行为事物
代表时间和空间上的动作,包括:
交互
交互表示法
状态机(一个对象或交互在生命周期内响应事件所经历的状态序列
状态机表示法

③分组事物
也就是(将彼此相关的元素进行分组的机制)
包表示法
④注释事物
也就是解释
解释表示法
p.s. 左边连接的是类;注释可以包含图形和文本

(2)关系

(模型元素包括事物和关系)
关系中分为4(细分5种)种关系:
关联关系(聚合关系和组合关系)、依赖关系、泛化关系、实现关系

(在网上找了一些帮助理解的图)
关系的表示方法

综合关系图

各种关系的强弱顺序:	
	泛化 = 实现 > 组合 > 聚合 > 关联 > 依赖 

(下面进行详细的介绍)
①关联关系

类之间的连接,用一条实线表示
关联关系
可分为:聚合关系和组合关系

<1>聚合关系: 表示类与整体之间的关系是整体与部分的关系

	用一条带空心菱形箭头的实线表示

S聚合关系表示法

【注意】箭头方向从部分指向整体
<2>组成关系

强类型的聚合,聚合中的每一个部分只能属于一个整体
用实心的菱形箭头表示

在这里插入图片描述

【补充】聚合和组成的区别

聚合:部分与整体可有不同的生存期
组成:部分只能属于一个唯一的整体,与其同生同灭

②依赖关系

两个事物之间,一个事物的改变会影响另一个事物
表示:带箭头的虚线(依赖方指向被依赖方)
在这里插入图片描述

③泛化关系

一般事物(父类)与该事物的特殊事物(子类)
表示:带空心箭头的实线

在这里插入图片描述

【注意】继承关系具有传递性

④实现关系

一个类和它的接口之间的关系,规定接口和实现接口的类或组件之间的关系
表示:带空心箭头的虚线

在这里插入图片描述

【继承和实现的区别】
1、继承:继承属性(结构)和行为
	实现:只继承行为

4、UML公共机制

公共机制包括:修饰、规格说明、通用划分(这三个属于通用机制)与扩展机制(包括构造型、标记型、约束)

规格说明:描述和展示系统的各个部分;
修饰:一些元素具有的访问限制符;
通用划分:简单来说就是两种分类方法,一种按类和对象划分,一种按接口和实现划分;
扩展机制:UML图示符号的扩展
(下面对扩展机制进行详细说明)
(1)构造型

用双尖括号括起来的字符串,如《include》、《create》、《destroy》、《signal》,用于扩展UML元素

(2)标记值

用大括弧括起的字符串,即{标记名=标记值},用于为事物添加新特性

(3)约束

用大括弧括起的字符串,即{约束内容},用来增加新的语义或改变已存在的规则

三、建立用例模型

第二部分只是一个概述,接下来要具体介绍怎么使用UML语言来建立模型

1、定义

用例模型:用于描述一个系统的所有用例图用例描述

2、用例图

用例图中的关系
3、用例描述
4、用例图建模技术

四、建立静态模型

五、建立动态模型

六、建立实现模型

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值