面向对象分析与设计论文

上传人:ji****72 文档编号:39548044 上传时间:2018-05-17 格式:DOC 页数:10 大小:40.50KB
返回 下载 相关 举报
面向对象分析与设计论文_第1页
第1页 / 共10页
面向对象分析与设计论文_第2页
第2页 / 共10页
面向对象分析与设计论文_第3页
第3页 / 共10页
面向对象分析与设计论文_第4页
第4页 / 共10页
面向对象分析与设计论文_第5页
第5页 / 共10页
点击查看更多>>
资源描述

《面向对象分析与设计论文》由会员分享,可在线阅读,更多相关《面向对象分析与设计论文(10页珍藏版)》请在金锄头文库上搜索。

1、面向对象分析与设计论文摘要:面向对象分析与设计 (OOA and OOD)是现代软件企业广为采用的一项有效技术 ,OOAD 方法要求在设计中要映射现实世界中指定问题域中的对象和实体 。面向对象分析强调的是在问题领域内发现和描述对象(或概念)。面向对象设计强调的是定义软件对象以及它们如何协作以实现需求。 本论文是在学习完面向对象分析与设计后,根据自己的理解对这门课程进行总结。首先对这门课程进行概述;然后,针对面向对象分析和设计分别进行说明;最后给出总结。关键字:面向对象 面向对象分析 面向对象设计 Abstract:Object-oriented analysis and design (OOA

2、 and OOD) is a modern software enterprise of widely-held an effective technology, OOAD method in the design requirements to mapping the real world problems of domain objects and designated entity. Object-oriented analysis emphasis is on the field in question and found that describe objects (or conce

3、pt). Object-oriented design emphasizes definition software objects and how they cooperation to achieve demand. The present paper is in after studying the object-oriented analysis and design, according to their own understanding to this curriculum were summarized in this paper. First of all to this c

4、ourse are summarized; Then, based on the object-oriented analysis and design show respectively; Summary is given.Key word:Object oriented object oriented analysis object oriented design一 引言OO(面向对象)是当前计算机界关心的重点,它是 90 年代软件开发方法的主流。面向对象的概念和应用已超越了程序设计和软件开发,扩展到很宽的范围。如数据库系统、交互式界面、应用结构、应用平台、分布式系统、网络管理结构、CAD

5、 技术、人工智能等领域。OOA (面向对象分析方法)和 OOD(面向对象设计)是面向对象软件开发生命周期中两个重要的阶段, OOA 活动涉及的是语义对象,强调的是对问题和需求的调查研究,而 OOD 活动涉及的是语义对象,接口对象,应用对象和实用库对象,强调的是满足需求在概念上的解决方案。二 面向对象的基本概念类是对象的抽象,对象是类的实例。类描述了一组有相同特性(属性)和相同行为(方法)的对象。在程序中,类实际上就是数据类型!例如:整数,小数等等。整数也有 一组特性和行为。面向过程的语言与面相对象的语言的区别就在于,面向过程的语言不允许程序员自己定义数据类型,而只能使用程序中内置的数据类型!而

6、为了模 拟真实世界,为了更好的解决问题,往往我们需要创建解决问题所必需的数据类型!面向对象编程为我们提供了解决方案。1.对象对象是人们要进行研究的任何事物,从最简单的整数到复杂的飞机等均可看作对象,它不仅能表示具体的事物,还能表示抽象的规则、计划或事件。2.对象的状态和行为。对象具有状态,一个对象用数据值来描述它的状态。 对象还有操作,用于改变对象的状态,对象及其操作就是对象的行为。3.类 具有相同或相似性质的对象的抽象就是类。因此,对象的抽象是类,类的具体化就是对象,也可以说类的实例是对象。 类具有属性,它是对象的状态的抽象,用数据结构来描述类的属性. 类具有操作,它是对象的行为的抽象,用操

7、作名和实现该操作的方法来描述。4.类的结构。在客观世界中有若干类,这些类之间有一定的结构关系。通常有两种主要的结构关系,即一般-具体结构关系,整体-部分结构关系。5.消息和方法。对象之间进行通信的结构叫做消息。在对象的操作中,当一个消息发送给某个对象时,消息包含接收对象去执行某种操作的信息。发送一条消息至少要包括说明接受消息的对象名、发送给该对象的消息名(即对象名、方法名)。一般还要对参数加以说明,参数可以是认识该消息的对象所知道的变量名,或者是所有对象都知道的全局变量名。三 面向对象的特征1.对象唯一性。每个对象都有自身唯一的标识,通过这种标识,可找到相应的对象。在对象的整个生命期中,它的标

8、识都不改变,不同的对象不能有相同的标识。2.分类性。分类性是指将具有一致的数据结构(属性)和行为(操作)的对象抽象成类。一个类就是这样一种抽象,它反映了与应用有关的重要性质,而忽略其他一些无关内容。任何类的划分都是主观的,但必须与具体的应用有关。3.继承性。继承性是子类自动共享父类数据结构和方法的机制,这是类之间的一种关系。在定义和实现一个类的时候,可以在一个已经存在的类的基础之上来进行,把这个已经存在的类所定义的内容作为自己的内容,并加入若干新的内容。继承性是面向对象程序设计语言不同于其它语言的最重要的特点,是其他语言所没有的。在类层次中,子类只继承一个父类的数据结构和方法,则称为单重继承。

9、在类层次中,子类继承了多个父类的数据结构和方法,则称为多重继承。在软件开发中,类的继承性使所建立的软件具有开放性、可扩充性,这是信息组织与分类的行之有效的方法,它简化了对象、类的创建工作量,增加了代码的可重性。采用继承性,提供了类的规范的等级结构。通过类的继承关系,使公共的特性能够共享,提高了软件的重用性。4.多态性多态性使指相同的操作或函数、过程可作用于多种类型的对象上并获得不同的结果。不同的对象,收到同一消息可以产生不同的结果,这种现象称为多态性。多态性允许每个对象以适合自身的方式去响应共同的消息。多态性增强了软件的灵活性和重用性。四 面向对象分析面向对象分析的关键,是识别出问题域内的对象

10、,并分析它们之间的关系,最终建立起问题域简洁、精确、可理解的正确模型。面向对象分析建模需要建立的是软件系统的用户领域模型,需要着重了解的是该软件系统的需求概念与术语,其分析内容是现实世界中的实体对象和各对象之间的关系,并不涉及编程概念。1 用况图(需求模型)UML 建模语言中,用况图被用来描述用户与系统之间的交互关系,说明系统所具有的业务能力和业务流程,能够方便开发者理解用户领域的专有术术语和业务内容。参入者(Actor):系统之外与系统有关的类,涉及与系统交互的人,机器或其他系统,用于反映系统跟周围环境的关系。关系分为通信关系、使用关系和扩展关系。通信关系(Communicates Rela

11、tionship):描述参入者与用例之间的关系,其中单个参入者可以与多个用例联系,反之,一个用例也可与多个参入者联系。清晰的描述了“谁使用了哪个用例”。用况图况例之间的关系。扩展关系(Extends Relationship):当一个基本用例由需要附加一个用例来扩展或延伸其原有功能时,附加的扩展用例和原有用例之间的关系就体现为扩展关系。扩展用例可以继承原有基本用例的一些功能,同时它又可以具有一些新的特有功能。使用关系(Uses Relationship):当在一个基本用例中使用到了另一个用例时,则这两个用例之间就构成了使用关系。 一般说来,如果多个用例中有一些共同的功能,则可以把这些共同的功能

12、提取出来单独构成为一个实例,而其他用例则可以通过“使用关系”共同使用这些用例。2 类图(建立基本模型)类图的获取是一个不断细化的过程,一般我们先从分析类开始。分析类是概念层面上的类,是进行类设计的基础,获取分析类是系统分析中一项很重要的工作。获取分析类的是一个需要大量技巧的工作,我们主要根据用例描述来确定分析类。属性与操作(1)属性: 属性用来描述类的特征,表示需要处理的数据。(2)操作:对数据的具体处理方法的描述则放在操作部分,操作说明了该类能做些什么工作,完成什么任务。操作通常称为函数,它是类的一个组成部分,只能作用于该类的对象上。确定关系(1)关联关系、泛化关系、聚集关系。3 建立辅助模

13、型顺序图:是一种交互图,描述对象之间的动态合作关系以及合作过程。中的行为次序,常用来描述一个用例的行为。通信图:通信图是一种强调发送和接受消息的对象结构组织的图,用以展示围绕对象以及他们之间的连接器而组织的交互。活动图:描述操作实现中完成的工作以及用例实例或对象中的活动,活动图是状态图的一个变种。状态图:描述某个对象,子系统,系统的生命周期。包图:描述对模型元素分组以及分组之间的依赖的图,其中要用到的包是对模型元素进行分组的机制。五 面向对象设计设计建模需要把分析阶段的结果扩展成技术解决方案,需要建立的是软件系统的技术构造模型。OOA 和 OOD 关系从 OOA 到 OOD 不是转换;而是调整

14、和增补。增补人机交互部分、构建及部属部分、控制驱动部分、数据管理部分。(1)问题域部分的设计问题域部分的设计要对 OOA 结果按实现条件进行补充与调整。即要继续运用 OOA 的方法,包括概念、表示法及一部分策略。不但 要根据实现条件进行 OOD 设计,而且由于需求变化或新发现了错误,也要对 OOA 的结果进行修改。(2)人机交互部分的设计把人机交互部分作为系统中一个独立的组成部分,进行分析和设计,有利于隔离界面支持系统的变化对问题域部分的影响。(3)控制驱动部分的设计为了描述问题域固有的并发行为,表达实现所需的设计决策,需要在 OOD 部分对控制驱动部分进行建模。控制流驱动部分,用于定义和表示

15、并发系统中的每个控制流。用主动对象表示每个控制流(进程、线程)所有的主动类构成控制流驱动部分(4)数据管理部分的设计数据管理部分是负责在特定的数据管理系统中存储和检索对象的组成部分。 其目的是,存储问题域的持久对象、封装这些对象的查找和存储机制,以及为了隔离数据管理方案的影响。 在传统的结构化设计方法中,很容易将实体-关系图映射到关系数据库中。 而在面向对象设计中,我们可以将 UML 类图看作是数据库的概念模型,但在 UML 类图中除了类之间的关联关系外,还有继承关系。(5)构件及部署部分的设计当前的一种主流的做法是在面向对象的系统设计阶段的后期,考虑如何对系统的构件进行描述、构造和组织,以及构件如何在节点上进行分布。六 总结通过这门课程的学习,是我对面向对象分析和面向对象设计有一个全面的认识,面向对象分析就是运用面向对象进行系统分析。他是软件生命周期的一个阶段,具有一般分析方法所共同具有的内容、目标及策略。但是 OOA 强调运用面向对象方法,对问题与和系统责任进行分析与理解,找出描述问题与和系统责任所需要的对象,定义对象的属性、操作以及对象之间的关系,目标是建立一个符合问题域、满足用户功能需求的OOA 模型。参考文献略

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号