第四章 面向对象方法

本文主要介绍了面向对象的基本概念,包括对象、类、继承和消息通信,并深入探讨了UML,包括其构造块、公共机制、构架以及各种图的使用。此外,还提到了面向对象系统分析和设计的不同方法,如OMT、Coad/Yourdon、Booch和Jacobson方法。
摘要由CSDN通过智能技术生成

考试大纲:

• 面向对象的基本概念
• 统一建模语言UML
• 可视化建模
• 面向对象系统分析
• 面向对象系统设计

面向对象的基本概念

面向对象=对象 (Objects) +类(Classes) +继 承 (Inheritance) +消息通信 (Communication with Messages)

对象(Object)是系统中用来描述客观事物的一个实体,它是构成系统的一个基本单位。
对象三要素:对象标志(对象的名字)、属性(状态或数据 )和服务(操作Operation、行为Behavior、方法Method)。
类 (class)是对象的抽象定义,是一组具有相同数据结构和相同操作的对象的集合,包括一组数据属性和在数据上的一组合法操作。
继承(Inheritance)是使用已存在的定义作为基础建立新定义的技术。
多态性可分为四类,分别为过载多态(重载多态),强制多态,包含多态和参数多态,其中前两种统称为专用多态(特定多态),后面两种称为通用多态。
消 息 (Message)是指向对象发出的服务请求,它应该含有下述信息:提供服务的对象标志、消息名、输入信息和回答信息。
面向对象方法学的优点:
  • 与人类习惯的思维方法一致
  • 稳定性好
  • 可重用性好
  • 较易开发大型软件产品
  • 可维护性好

UML

UML (Unified Modeling Language,统一建模语言)是用于系统的可视化建模语言。

构造块

构造块也就是基本的UML建模元素、关系和图

  • 建模元素:类、接口、协作、用例、活动类、组件、节点等。
  • 关系:关联关系、依赖关系、泛化关系、实现关系。
  • 图:类图、对象图、复合结构图、构件图、部署图、包图。
公共机制
  • 规格说明:规格说明是元素语义的文本描述。
  • 修饰:UML为每一个模型元素设置了一个简单的记号。
  • 公共分类:包括类元与实体、接口和实现两组公共分类。
  • 扩展机制:包括约束、构造型、标记值
构架
  • 逻辑视图:以问题域的语汇组成的类和对象集合
  • 进程视图:可执行线程和进程作为活动类的建模,它是逻辑视图的一次执行实例
  • 实现视图:对组成基于系统的物理代码的文件和组件进行建模
  • 部署视图:把组件物理地部署到一组物理的、可计算节点上
  • 用例视图:最基本的需求分析模型
各种图:

用例图:用例实例是在系统中执行的一系列动作,这些动作将生成特定参与者可见的价值结果。
在这里插入图片描述
类图和对象图:类 (Class)、对 象 (Object)、属性之间关联。
在这里插入图片描述
类的关系:

  • 依赖关系:有两个元素A、B , 如果元素A 的变化会引起元素B 的变化,则称元素B 依 赖 (Dependency)于元素A
  • 泛化关系:泛化关系描述了一般事物与该事物中的特殊种类之间的关系,也就是父类与子类之间的关系
  • 关联关系:关联 (Association) 表示两个类的实例之间存在的某种语义上的联系。(例子学校和教室的关联关系)
  • 聚合关系: 关联关系中,聚合关系是表示一种整体和部分的关系,(电脑显示器和键盘等)
  • 组合关系: 关联关系中,组合关系是表示一种整体和部分有紧密关系不是密不可分。(公司与部门)
  • 实现关系。实现关系是用来规定接口和实现接口的类或组件之间的关系
    类图:类图 (Class Diagram)描述类和类之间的静态关系
    对象图:对象图可以看做是类图的一个实例。

交互图-顺序图:顺序图(SequenceDiagram)用来描述对象之间动态的交互关系,着重体现对象间消息传递的时间顺序。
在这里插入图片描述
协作图:用于描述相互合作的对象间的交互关系和链接关系。顺序图着重体现交互的时间顺序,协作图则着重体现交互对象间的静态链接关系
在这里插入图片描述

状态图:状态图 (StateDiagram)用来描述对象状态和事件之间的关系。

  • 状态:又称为中间状态,用圆角矩形框表示。
  • 初始状态:又称为初态,用一个黑色的实心圆圈表示,在一张状态图中只能够有一个初始状态。
  • 结束状态:又称为终态,在黑色的实心圆圈外面套上一个空间圆,在一张状态图中可能有多个结束状态。
  • 状态转移:用箭头说明状态的转移情况。
    在这里插入图片描述

活动图:活动图用来表示系统中各种活动的次序。
在这里插入图片描述
在这里插入图片描述
构件图:构件图是面向对象系统的物理方面进行建模时要用的两种图之一。它可以有效地显示一组构件,以及它们之间的关系。构件图中通常包括构件、接口,以及各种关系。
在这里插入图片描述
部署图:部署图,也称为实施图,它和构件图一样,是面向对象系统的物理方面建模的两种图之一。
在这里插入图片描述

面向对象系统分析

结构化方法经历了从“结构化编程” 、“结构化设计” 到 “结构化分析” 的发展历程,面向对象的方法也经历了从“ 面向对象的编程” Object-Oriented Programming, OOP)、“面向对象的设计” Object-Oriented Design, OOD )到 “面向对象的分析” Object-OrientedAnalysis, OOA ) 的发展历程。

OMT方法
  1. 分析对象模型:确定类与对象、确定结构与关联、划分主题、 定义属性、 定义服务
  2. 建立动态模型:是编写典型交互行为的脚本
  3. 建立功能模型:以用例图取代数据流图进行需求分析和建立功能模型。
UML分析 重点
  1. 分析域模型:寻找类、确定类之间的关联、为类添加职责(职责详细程度要可控)
  2. 建立用例模型
    用例描述通过包括以下几个部分完成:1. 用例名称、2. 简要说明、3.事件流、4.非功能要求、5.前置条件、6.后置条件、7.扩展点、8.优先级

面向对象设计

Coad/Yourdon 方法

Coad/Yourdon方法严格区分了面向对象分析OOA和面向对象设计OOD。

  1. 问题域的设计
  2. 人-机交互界面的设计
  3. 应用控制的设计
  4. 与问题领域有关的设计
Booch 方法

Booch方法的过程包括以下步骤:
( 1 ) 在给定的抽象层次上识别类和对象;
( 2 ) 识别这些对象和类的语义;
( 3 ) 识别这些类和对象之间的关系;
( 4 ) 实现类和对象。
Booch方法的力量在于其丰富的符号体系,包括:
( 1 ) 类 图 (类结构-静态视图);
( 2 ) 对 象 图 (对象结构-静态视图);
( 3 ) 状 态转 移 图(类结构-动态视图);
( 4 ) 时 态 图 (对象结构-动态视图);
( 5 ) 模 块 图 (模块体系结构) ;
( 6 ) 进 程 图 (进程体系结构)。

OMT方法
  1. 分析
  2. 系统设计
  3. 对象设计
  4. 实现
Jacobson 方法

涉及整个软件生命周期, 包括需求分析、设计、实现和测试等四个阶段。需求分析和设计密切相关。
( 1 ) 领域对象模型。用例模型根据领域来表示;
( 2 ) 分析模型。用例模型通过分析来构造;
( 3 ) 设计模型。用例模型通过设计来具体化;
( 4 ) 实现模型。该模型依据具体化的设计来实现用例模型;
( 5 ) 测试模型。用来测试具体化的用例模型。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值