软件工程 第6章 面向对象技术

软件工程 第6章 面向对象技术

ID:46882445

大小:102.50 KB

页数:26页

时间:2019-11-28

软件工程 第6章 面向对象技术_第1页
软件工程 第6章 面向对象技术_第2页
软件工程 第6章 面向对象技术_第3页
软件工程 第6章 面向对象技术_第4页
软件工程 第6章 面向对象技术_第5页
资源描述:

《软件工程 第6章 面向对象技术》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、第六章面向对象技术【本章引言】面向对象技术是一整套实用的软件开发方法,并在系统构造中尽可能运用人类的自然思维方式,它是从面向对象程序设计语言发展起来,关于如何看待软件系统与现实世界的关系,以什么如何进行系统构造的软件方法学,逐渐形成面向对象分析(OOA)和面向对象设计(OOD)以及面向对象编程(OOP)的方法。开发方法发展是一个进化的过程。【本章重点】面向对象、类、继承、封装、多态等面向对象技术中的概念;面向对象的开发模型;面向对象的分析;面向对象的系统设计过程;子系统设计、人机交互设计、任务管理设计和数据管理设计;面向

2、对象的实现;6.1面向对象技术的概述面向对象技术中的“对象”和“面向对象”的关系是这样的,面向对象(Object-oriented)=对象(Object)+类(Classification)+继承(Inheritance)+通信(Communication)。面向对象的基本特征6.1.1面向对象的基本概念1.对象(Object)对象是面向对象开发模型的基本成分,是是可以用系统中用来描述客观事物的一个实体。2.类(Classification)类是一组具有相同数据结构和相同操作的对象的集合。类的定义包括一组数据属性和在数据

3、上的一组合法操作。6.1.1面向对象的基本概念3.封装、继承和多态封装,也就是把客观事物封装成抽象的类,并且类可以把自己的数据和方法只让可信的类或者对象操作,对不可信的进行信息隐藏。继承使得程序员对共同的操作及属性只说明一次,并且在具体的情况下可以扩展细化这些属性及操作。多态性(polymorphism)是允许你将父对象设置成为和一个或更多的他的子对象相等的技术,赋值之后,父对象就可以根据当前赋值给它的子对象的特性以不同的方式运作。6.2面向对象的开发模型面向对象分析产生三种分析模型:1.功能模型(即用例模型作为输入)功

4、能模型由多个数据流图组成,它们指明从外部输入,通过操作和内部存储,直到外部输出,这整个的数据流情况。2.对象模型对用例模型进行分析,把系统分解成互相协作的分析类,通过类图/对象图描述对象/对象的属性/对象间的关系,是系统的静态模型。复杂问题(大型系统)的对象模型由下述五个层次组成:主题层(也称为范畴层)、类-&-对象层、结构层、属性层和服务层3.动态模型描述系统的动态行为,通过时序图/协作图描述对象的交互,以揭示对象间如何协作来完成每个具体的用例,单个对象的状态变化/动态行为可以通过状态图来表达。6.3面向对象的分析6.

5、3.1论域分析(DomainAnalysis)6.3.2应用分析(Analysis)面向对象分析(Object-OrientedAnalysis,OOA,面向对象分析方法),是在一个系统的开发过程中进行了系统业务调查以后,按照面向对象的思想来分析问题。OOA(面向对象的分析)模型由5个层次(主题层、对象类层、结构层、属性层和服务层)和5个活动(标识对象类、标识结构、定义主题、定义属性和定义服务)组成。6.3.1论域分析(DomainAnalysis)论域分析是软件开发方法中一个基本组成部分,它给出的一组抽象是论域的知识的

6、高层表示,用来作为特定系统需求开发的参考。由于分析常常是在超出当前应用的范围进行的,所以这个技术仅在扩充当前系统或将来建立其它系统时找寻复用信息时才是实用的。6.3.2应用分析(Analysis)应用(或系统)分析细化在论域分析阶段所开发出来的信息,并且把注意力集中于要解决的精确的问题。应当把客户对系统的需求当做限制来使用,它们缩减了论域的信息量,而这种信息将是主动设计过程的一部分。以手机短信传送的现实问题为实例6.4面向对象的系统设计6.4.1系统设计过程6.4.2子系统设计6.4.3人机交互设计6.4.4任务管理设计

7、6.4.5数据管理设计6.4.1系统设计过程面向对象设计分为系统结构设计和对象设计。在分析完成之后,对象设计之前,系统结构设计要确定给出一个解的框架,实现系统的策略和目标系统的高层结构。系统高层结构是在时间和空间、软件和硬件等系列之间作出权衡,例如子系统的划分、内在的并发、子系统对硬软件的分配、数据管理资源协调以及边界条件和优先权。6.4.2子系统设计软件工程中设计复杂的应用系统的时候通常采用分而治之的方法,把系统分为若干功能模块,然后分别设计每个部分。系统中每个部分称之为子系统。例如,企业网络信息系统的子系统一般包括生

8、产管理子系统、人事管理子系统、财务管理子系统以及后勤管理子系统等功能模块。6.4.3人机交互设计对于交互系统,人机交互包括指定窗口和报表的形式、系统响应时间和设计命令层次等内容。人机交互设计融合了一般交互、信息显示和数据输入的设计,整体上控制全局性,以保持界面的设计的友好高效。6.4.4任务管理设计常见的任务有事件驱

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。