【软工】软件设计——面向对象技术


前言

前面已经说过了面向过程的软件设计方法,这次就说一说面向对象的软件设计方法。

正文

概念

面向对象

面向对象=对象+类+继承+通信
一个软件系统是使用这4个概念设计和实现的,那么这个软件系统是面向对象的。

对象

对象是没想对象开发模式的基本成分。每个对象可以有它本身的一组属性和它可以执行的一组操作来定义。
属性可以通过执行对象的操作来改变。

消息

消息是对象间的联系(主动对象和被动对象)
消息是一个对象与另一个对象的通信单元。

类是一组具有相同的数据结构和相同的操作的对象的集合。
类的定义包括椅子数据属性和在数据上的一组合法操作。

继承

继承是使用已经存在的定义作为基础建立新定义的技术。

开发过程

应用生存期

在这里插入图片描述

论域分析

论域分析开发问题论域的问题
建立大致的系统实现环境。

应用分析

根据特定应用的需要进行论域分析
细化在论域分析阶段开发出来的信息,把注意力集中在当前要解决的问题上。

类生存期

在这里插入图片描述

类的实现

通过变量的声明,操作界面的实现以及支持界面操作的函数的实现,可实现一个类的预期行为和状态。

类的测试

若类的定义提供的界面比较狭窄,穷举测试可以实现。
类的测试在最抽象的层次开始,沿继承关系继续向下进行。
已经测试过得部分不需要重新测试。

求精和维护

这个是一个软件生存期中最花费时间的部分。
传统的维护活动是针对应用的,而求精过程是针对类的,针对把类集成在一起的结构。

分析(OOA)

面向对象设计,重点是五层次和四组成部分。

OOA的两个任务

说明面对的应用问题,最终成为软件系统基本过程的对象,还有系统所必须遵从的、由应用环境所决定的规则和约束。

明确的规定构成系统的对象如何协同合作、完成指定的功能。

五层次模型

这五个层次是分析过程中的层析,每个层次的工作都为系统的规格说明在增加了一个组成部分。
在这里插入图片描述

类与对象

表示待开发的基本结构快,这一层是整个OOA模型的基初,问题在于如何建立现实世界中的事物。

属性

对象的属性和实例链接共同组成了OOA模型的属性层。

服务

对象的服务,加上对象实例之间的消息通信,共同组成了OOA模型的服务层,消息链接用有向箭头表示。

结构

负责捕捉特定应用域中的结构关系。

一种类型,描述出了该系统的整体结构。
另一种类型,称为一般—特殊结构,表明了类的继承性。

主题
具体操作
识别类和对象

第一个层次主要是识别类和对象
类和对象是对与应用有关的概念的抽象,这一层工作是整个分析模型的基础。

选择类和对象的原则
目标系统必须记住类和对象的某些事情。
类和对象应当提供某些服务或处理,
多属性。
所有属性对于类中所有实例都有意义。

标识结构

典型的结构有两种:
一般化—特殊化结构;整体—部分结构

标识一般化—特殊化结构的方法和策略:
对于每一类和对象,将他看做是一个一般化的类,对他的所有特殊情况,考虑以下问题:
它是否在问题论域中?
是否在系统职责捏?
继承性是否存在?
是否能都符合选择类和对象的标准?

标识整体化—部分化结构的方法和策略:
总体——部分关联
包容——内含关联
收集——成员关联

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

张_Laura

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值