第5章 面向对象开发技术

合集下载

深入理解面向对象编程思想

深入理解面向对象编程思想

深入理解面向对象编程思想面向对象编程 (Object-oriented programming, OOP) 是一种计算机编程思想和方法,其核心概念是将现实世界中的事物抽象成程序中的对象,并通过对象之间的交互来实现程序的功能。

本文将深入理解面向对象编程思想并分点详细说明。

1. 面向对象编程的基本概念- 对象:将现实世界中的事物抽象成程序中的对象,具有属性和方法。

- 类:对象的蓝图或模板,描述一类具有相同属性和方法的对象。

- 封装:将对象的属性和方法封装在一起,只暴露必要的接口给外部使用。

- 继承:通过继承机制,子类可以继承父类的属性和方法,并可以扩展或修改其行为。

- 多态:允许不同类的对象对同一消息做出响应,提高代码的灵活性和可扩展性。

2. 面向对象编程的优点- 模块化:将程序拆分成多个对象,每个对象负责自己的功能,便于维护和复用。

- 可扩展性:通过继承和多态,可以轻松地增加新的功能和行为,而不必修改现有代码。

- 可读性和可维护性:面向对象的代码结构清晰,可读性好,易于理解和维护。

- 降低耦合度:对象之间通过接口进行通信,减少了对象间的依赖关系,降低耦合度。

- 提高代码复用性:可以复用已有的类和对象,减少重复开发的工作量。

3. 面向对象编程的实践方法- 根据需求分析,识别出需要抽象为对象的实体和概念。

- 设计类的结构,确定属性和方法,通过封装保证类内部数据的安全性。

- 使用继承机制,将通用的属性和方法抽象到父类中,子类继承并根据需要进行扩展或修改。

- 使用多态特性,通过接口或抽象类定义共同的行为,不同的子类实现自己的具体行为。

- 运用设计模式,如单例模式、工厂模式等,通过经验总结的设计模式提高代码的可复用性和可维护性。

- 编写代码时遵循面向对象的原则,包括单一职责原则、开放封闭原则、里氏替换原则等。

4. 面向对象编程的应用场景- GUI 开发:基于面向对象的编程思想可以很好地实现图形用户界面的开发,将界面元素抽象为对象,通过交互实现用户与程序的互动。

面向对象技术概述

面向对象技术概述

1.1 知识要点1.面向对象技术的基本概念∙面向对象技术是以对象为基础、以事件或者消息来驱动对象执行处理的程序设计技术。

∙对象是包含客观事物特征的抽象实体,是属性和行为的封装体。

在程序设计领域,可以用“对象=数据+作用于这些数据上的操作”这一公式来表达。

∙类是对具有相同属性和行为的一组对象的抽象描述。

∙事件是系统产生的动作或是运行应用程序产生的动作。

事件通过消息描述,消息是描述事件发生的信息。

∙消息是对象间交互的手段,是要求某个对象执行某个操作的规格说明。

2.面向对象技术的基本特征∙抽象性是指忽略事物中与当前目标无关的非本质特征,而强调本质特征的特征。

∙封装性是指把对象的属性和行为封装在一起,并尽可能隐藏对象的内部细节的特征。

∙继承性是指特殊类的对象拥有其一般类的属性和行为的类与类之间层次关系的特征。

∙多态性是指不同对象收到相同消息时可以产生多种不同的行为方式的特征。

【重点】∙面向对象技术的概念。

∙类与对象的概念及关系。

∙面向对象与面向过程程序设计的区别。

∙面向对象技术的基本特征。

面向对象技术与Visual C++学习指导2【难点】∙类与对象的概念。

∙面向对象与面向过程程序设计的区别。

∙面向对象技术的基本特征。

1.2 习题解答1.什么是面向对象技术?【问题解答】面向对象技术是一种以对象为基础,以事件或消息来驱动对象执行处理的程序设计技术。

它具有抽象性、封装性、继承性及多态性。

2.面向对象与面向过程程序设计有什么不同?【问题解答】面向对象与面向过程程序设计有如下不同:(1)面向过程程序设计方法采用函数(或过程)来描述对数据的操作,但又将函数与其操作的数据分离开来;面向对象程序设计方法将数据和对数据的操作封装在一起,作为一个整体来处理。

(2)面向过程程序设计方法以功能为中心来设计功能模块,难于维护;而面向对象程序设计方法以数据为中心来描述系统,数据相对于功能而言具有较强的稳定性,因此更易于维护。

(3)面向过程程序的控制流程由程序中预定顺序来决定;面向对象程序的控制流程由运行时各种事件的实际发生来触发,而不再由预定顺序来决定,更符合实际需要。

面向对象编程的基本概念

面向对象编程的基本概念

面向对象编程的基本概念面向对象编程的基本概念随着计算机技术的不断发展和应用的深入,编程语言也不断演化,出现了各种面向对象编程语言,如Java、C++、Python等。

面向对象编程(Object-Oriented Programming,简称OOP)是一种编程范式,它将计算机程序模块化,以对象作为程序设计的基本单元进行组织和设计。

本文将从面向对象编程的概念、特点、实现方式、应用等方面进行详细介绍。

一、面向对象编程的概念面向对象编程是一种编程思想和方法,它将现实世界的事物抽象为“对象”,以及对象之间的交互,来进行程序设计和模块化。

对象是指具有属性和方法的实体,它既可以是现实世界中的事物,也可以是抽象的概念,如字符串、整数、函数等。

而方法则是对象的行为,用于操作对象的属性,实现某种功能。

面向对象编程的核心思想就是封装、继承和多态。

二、面向对象编程的特点1、抽象化和封装化面向对象编程通过抽象化和封装化,将复杂的现实世界事物抽象为简单的对象,并将对象的内部细节隐藏起来,使得外部只能通过对象的接口来访问对象,从而实现了信息的隐藏和保护。

2、继承性继承性是面向对象编程的一个重要特点,它允许创建一个新的类,并从一个或多个现有类中继承属性和方法,从而减少了代码的冗余,提高了代码的重用性和灵活性。

3、多态性多态性是面向对象编程的另一个重要特点,它允许不同类型的对象调用同一个方法,不同对象按照自己的方式去实现这个方法,从而增强了程序的灵活性和可扩展性。

三、面向对象编程的实现方式1、类和对象类是具有相同属性和方法的对象的集合,它是面向对象编程的基本概念。

对象是类的实例,包含了类的所有属性和方法,可以通过对象来访问类的属性和方法。

2、封装封装是面向对象编程的特有功能,它可以将属性和方法隐藏起来,只留下外界可以访问的接口,从而达到保护数据的目的。

3、继承和多态继承是面向对象编程中的另一个重要概念,它可以复用已有的代码,减少代码冗余,提高代码的可重用性。

(完整版)软件工程 第五章 面向对象的需求分析

(完整版)软件工程 第五章 面向对象的需求分析

第五章面向对象的需求分析面向对象的需求分析方法的核心是利用面向对象的概念和方法为软件需求建造模型。

它包含面向对象风格的图形语言机制和用于指导需求分析的面向对象方法学。

面向对象的思想最初起源于 20世纪 60年代中期的仿真程序设计语言Simula67。

20世纪80年代初出现的Smalltalk 语言及其程序设计环境对面向对象技术的推广应用起到了显著的促进作用。

20世纪90年代中后期诞生并迅速成熟的UML(Unified Modeling Language,统一建模语言)是面向对象技术发展的一个重要里程碑。

UML 统一了面向对象建模的基本概念、术语和表示方法,不仅为面向对象的软件开发过程提供了丰富的表达手段,而且也为软件开发人员提供了互相交流、分享经验的共用语言。

本章首先介绍面向对象的主要概念和思想。

在概述了UML的全貌之后,以“家庭保安系统”为实例,介绍与需求分析相关的部分 UML语言机制以及基于UML的面向对象的需求分析方法和过程。

第一节面向对象的概念与思想一、面向对象的概念关于“面向对象”,有许多不同的看法。

Coad和 Yourdon给出了一个定义:“面向对象 = 对象 + 类 + 继承 + 消息通信”。

如果一个软件系统是使用这样4个概念设计和实现的,则认为这个软件系统是面向对象的。

一个面向对象的程序的每一成分应是对象,计算是通过新的对象的建立和对象之间的消息通信来执行的。

1.对象(object)一般意义来讲,对象是现实世界中存在的一个事物。

可以是物理的,如一个家具或桌子,如图 5-1-1所示,可以是概念上的,如一个开发项目。

对象是构成现实世界的一个独立的单位,具有自己的静态特征(用数据描述)和动态特征(行为或具有的功能)。

例如:人的特征:姓名、性别、年龄等,行为:衣、食、住、行等。

图 5-1-1 对象的定义(1)对象、属性、操作、消息定义对象可以定义为系统中用来描述客观事物的一个实体,它是构成系统的一个基本单位,由一组属性和一组对属性进行操作的服务组成。

面向对象开发方法的概念

面向对象开发方法的概念

面向对象开发方法的概念面向对象开发方法是一种软件开发方法,强调将应用程序拆分成小的、独立的、可重用的组件,并使用类、对象和继承等面向对象技术来组织这些组件。

以下是面向对象开发方法的概念和主要特点:1. 对象:面向对象开发方法的核心思想是将应用程序拆分成小的、独立的、可重用的组件。

每个对象都有自己的属性和方法,可以与其他对象进行交互,并能够独立地运行。

2. 类:类是一种抽象的概念,用于描述对象的属性和方法。

类定义了对象的行为和特征,可以用于创建对象。

3. 继承:继承是一种面向对象技术,用于创建类之间的关系。

父类和子类都是类,但它们具有不同的属性和方法,可以相互继承。

4. 封装:封装是一种面向对象技术,用于保护对象的属性和方法。

通过封装,对象可以隐藏自己的内部状态,只向外部暴露必要的信息。

5. 多态:多态是一种面向对象技术,用于在不同情况下呈现不同的行为。

通过多态,对象可以在不同的上下文中执行不同的操作。

6. 抽象类和接口:抽象类和接口都是面向对象技术,用于定义类之间的关系。

抽象类是一种类,但它没有具体的实例,只能继承。

接口是一种描述类行为的规范,可以包含属性和方法。

7. 测试:测试是一种面向对象技术,用于验证应用程序的正确性。

通过测试,可以测试对象的属性和方法,确保它们正确地执行所需的操作。

面向对象开发方法可以提高应用程序的可重用性、可维护性和可扩展性。

它可以帮助开发人员更好地组织代码,减少代码冗余,提高代码可读性和可维护性。

面向对象开发方法还可以应用于各种不同类型的应用程序,包括Web应用程序、移动应用程序、桌面应用程序等。

通过使用面向对象技术,开发人员可以更好地理解和组织应用程序的代码,并提高应用程序的性能和质量。

面向对象开发方法是一种强大的软件开发方法,可以帮助开发人员更好地组织代码,提高应用程序的可重用性、可维护性和可扩展性。

面向对象开发方法简述

面向对象开发方法简述

面向对象开发方法简述面向对象开发方法是一种软件开发方法,它以对象为中心,将软件系统的各部分看做对象,通过对象之间的交互实现软件系统的功能。

面向对象开发方法具有可重用性强、结构清晰、易于扩展和维护等优点,因此已广泛应用于各个领域的软件开发。

面向对象开发方法的主要特点是将软件系统看做一个由多个对象组成的整体,每个对象具有自己的属性和行为,对象之间可以进行交互和通信,通过对象之间的交互和组合实现软件系统的功能。

面向对象开发方法需要遵循以下原则:1.封装封装是指将对象的属性和行为封装在一起,形成一个独立的单元,对外部不可见。

封装可以保证对象的属性和行为不会被误修改,保证了软件系统的安全性和稳定性。

2.继承继承是指在已有类的基础上,创建一个新的类,并且继承原有类的属性和方法。

继承可以减少代码的冗余,提高代码的复用率,降低开发成本。

3.多态多态是指同一种行为或方法可以具有不同的表现形式。

多态可以提高代码的可扩展性,增加代码的灵活性。

面向对象开发方法主要包含以下几个步骤:1.需求分析需求分析是软件开发的第一步,需要明确系统所需功能和要求,然后将其转化为软件需求文档。

2.设计设计是整个软件开发过程的核心,需要将需求转化为具体的设计方案,包括系统结构设计、模块设计和接口设计等。

3.编码编码是将设计方案转化为实际的程序代码的过程,需要按照面向对象的原则进行编码。

4.测试测试是确保软件系统能够正常运行的过程,包括单元测试、集成测试和系统测试等环节。

5.发布发布是将软件系统交付给用户使用的过程,需要进行软件部署、文档编写和培训等工作。

管理信息系统第五章课后习题

管理信息系统第五章课后习题

管理信息系统第五章课后习题1.诺兰阶段模型的实用意义何在?它把信息系统的成长过程划分为哪几个阶段?答:实用意义:诺兰的阶段模型总结了发达国家信息系统发展的经验和规律。

一般认为模型中的各阶段都是不能跳跃的。

因此,无论在确定开发管理信息系统的策略,或者在制定管理信息系统规划的时候,都应该首先明确本单位当前处于哪一生长阶段,进而根据该阶段特征来指导MIS建设。

六个阶段:初装,蔓延,控制,集成,数据管理,成熟。

2. “自下而上”和“自上而下”两种MIS开发策略有何优缺点?答:①“自下而上”的开发策略是从现行系统的业务状况出发,先实现一个个具体的功能,逐步地由低级到高级建立MIS,因为任何一个MIS的基本功能是数据处理,所以“自下而上”的策略首先从研制各项数据处理应用开始,然后根据需要逐步增加有关管理控制方面的功能。

其优点是可以避免大规模系统可能出现运行不协调的危险,但缺点是不能像想象那样完全周密,由于缺乏从整个系统出发考虑问题,随着系统的进展,往往需要作许多重大修改,甚至重新规划设计。

②“自上而下”的开发策略强调从整体上协调和规划,由全面到局部,由长远到近期,从探索合理的信息流出发来设计信息系统。

由于这种开发策略要求很强的逻辑性,因而难度较大,但这是一种更重要的策略,是信息系统的发展走向集成和成熟的要求。

3. 什么是企业流程重组?为什么说企业流程重组不仅涉及技术,而且涉及人文因素?人文因素体现在哪些方面?答:企业流程重组是根据新技术条件下信息处理的特点,以事物发生的自然过程寻找解决问题的途径。

企业流程与企业的运行方式,组织的协调合作,人的组织管理,新技术的应用与融合等紧密相关,因而,企业流程的重组不仅涉及技术,也涉及人文因素,包括观念的重组,流程的重组和组织的重组,以新型企业文化代替老的企业文化,以新的企业流程代替原有的企业流程,以扁平化的企业组织代替金字塔形的企业组织。

4. 制定MIS战略规划时使用BSP法主要想解决什么问题?答:①确定出未来信息系统的总体结构,明确系统的子系统组成和开发子系统的先后顺序。

Java程序设计基础-面向对象

Java程序设计基础-面向对象
表5-1 访问修饰符的访问控制范围
访问修饰符名称
说明
public
可以被任何类访问
可以被同一包中的所有
protected
类访问
可以被所有子类访问
private
只能够被当前类的方法 访问
default(无访问修饰符)
可以被同一包中的所有 类访问
备注
子类没有在同一包中也 可以访问
如果子类没有在同一个 包中,也不能访问
在继承的体系中,访问看类型,调用看对象,在案例56中,当一个Crucian对象的类型被定义成Fishes时,这个 对象只能访问Fishes所拥有的属性和方法,但是实际方法 调用则会到该对象的定义类中查找,如果该方法在这个对象 的类中定义了,则会调用这个方法,否则调用Fishes类中 定义的该方法。从案例5-6的toString()方法的输出就可以 得出该结论。
图5-2 文件中的包结构
在开发的过程中,使用恰当的包结构、包名称和类 名称,可以让自己和其他开发人员快速地了解项目并且 使用你的类。所以,平时要培养这种命名思想,合理地 命名包和类名。
2.访问修饰符
在Java中有4种访问修饰符:public、protected、 private和default,这4种访问修饰符的控制范围是不 同的,如表5-1所示。
通过表5-1可知,当访问修饰符是public的时候,所有 的类都可以访问,就是说这是完全公开的;当用protected 修饰的时候只能被同包下的类和子类所访问(子类的概念在 5.4节中会详细介绍);如果是使用private,则只有当前类 可以访问;对于没有修饰符限制的,我们称之为缺省修饰符, 这种方法或者属性只能被本包内的其他类所使用,如果其子 类不在本包内,也不可以使用。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

5.2 面向对象的相关概念
图5-3 对象、类与实例
5.2 面向对象的相关概念
5.2.2 继承及多态性 1) 继承 继承(Inheritance)是父类和子类之间共享数据结构和方法的 一种机制,是以现存的定义的内容为基础,建立新定义内容的技术, 是类之间的一种关系。继承有两种:单重继承、多重继承。继承性 通常表示父类与子类的关系,如图5-4所示。
5.1 面向对象方法概述
2. 面向对象的软件开发范型 (1)传统软件开发方法主要是结构化方法。 (2)面向对象的软件开发方法按照同传统软件开发一样的步 骤,同样要经历分析、设计、编码实现和测试的生命周期。 (3)大部分面向对象软件开发模型都包括以下内容: ① 分析用户的需求,提炼对象。 ② 将现实中问题领域的对象抽象成计算机软件中的对象。 ③ 分析并描述对象之间的关系。 ④ 根据用户的需求,不断地修改并完善。
5.3 面向对象分析
5.3.1 面向对象分析的任务 1.面向对象分析的原则 OOA阶段是获取和描述用户需求并建立问题域对象模型的过程。 分析系统中所含的所有对象及其相互间的关系,为建立分析模型,应 遵照5个基本原则:建立信息域模型;描述功能;表达行为;划分功 能、数据、行为模型,揭示更多的细节;以早期模型描述问题实质, 以后期模型给出实现细节,这是OOA的基础。
5.2 面向对象的相关概念
图5-4 继承性
图5-5 继承性描述
5.2 面向对象的相关概念
图5-5 是继承性描述的一种图示方法。通过继承关系还可构成 层次关系,单重继承构成的类之间的层次关系为一树状,若将所有 无子类的类,都看成还有一个公共子类,多重继承构成的类之间的 关系为一个网格,而且继承关系可传递。 建立继承结构的优点有3个:一是易编程、易理解且代码短, 结构清 晰;二是易修改,共同部分只在一处修改即可;三是易增加新类, 只须描述不同部分。
5.3 面向对象分析
【案例5-2】对象模型以包含的对象及其关系图表
示。在对象模型中用于表示“类、类的关联关系和链 属性”的图形符号,分别如图5-7所示中(a)、(b)和(c)。 其中,类的关联关系反映对象之间相互依赖及作用关 系,链属性是关联中链(实例对象间的物理或概念上 的连接)的性质。
5.3 面向对象分析
5.3 面向对象分析
图Hale Waihona Puke -6 面向对象分析过程5.3 面向对象分析
5.3.3 对象建模技术
对象建模技术(Object Modeling Technique,OMT)用于OOA、系统 设计和对象级设计。可将分析时获取的需求信息构建在对象模型、功能模 型和动态模型三类模型中。 1. 建立对象模型 对象模型是OOA最关键的模型之一,主要描述系统中对象的静态结构、 对象之间的关系、对象的属性和操作。通过表示静态的、结构上的、系统 的“数据"特征,为动态模型和功能模型提供基本框架,利用包含对象和类 的关系图表示。 建立对象模型时,首先确定对象和类,然后分析对象的类及其相互之间关 系。对象类与对象间的关系可分为3种:一般—特殊(继承或归纳)关系、 聚集(组合)关系和关联关系。对象模型用类符号、类实例符号、类的继 承关系、聚集关系和关联等表示。 对象模型描述系统的静态结构包括:类和对象,它们的属性和操作, 以及它们之间的关系。构造对象模型的目的是找出与应用程序密切相关的 概念。
5.1 面向对象方法概述
5.1.3 面向对象开发过程及范型
1. 面向对象开发过程 OOM不仅是一些具体的软件开发技术与策略,而且是一整套处理软 件系统与现实世界的关系并进行系统构造的软件方法学。其开发过程与其 他方法不同,从问题论域开始,历经从问题提出到解决的一系列过程。下 面具体说明在开发过程中的步骤。 (1)分析阶段。包括两个步骤:论域分析和应用分析。 (2)高层设计。 (3)开发类。 (4)建立实例。 (5)组装测试。 (6)维护。
5.1 面向对象方法概述
用例之间通常有“使用”和“扩展”两种关系。
图5-2 用例图
5.1 面向对象方法概述
2.常见的面向对象开发方法 开发方法有Coad方法、Booch方法、OMT方法和UML语言等。 (1)Booch方法。 (2)Coad方法。 (3)OMT方法。 (4)UML语言。
课堂讨论:
5.1 面向对象方法概述
第5章 面向对象开发技术
教学目标 ● 掌握面向对象的有关概念 ● 理解面向对象软件的开发任务及过程 ● 熟悉面向对象分析(OOA)和面向对象 设计(OOD)方法 ● 掌握一种面向对象分析和设计的方法的 实际应用
5.1 面向对象方法概述
面向对象方法(OOM)是面向对象技术在软件工程中的全面 运用,包括面向对象分析(,OOA)、面向对象设计(OOD)、面向对 象编程(OOP)、面向对象测试(OOT)和面向对象维护等方法。
5.2 面向对象的相关概念
3)类和实例 类(Class)也称对象类(Object Class)是对具有相同属性和服务的 一组对象的抽象定义。类与对象是抽象描述与具体实例的关系,一个具体的 对象被称为类的一个实例(Instance)。
[案例5-1] “张三轿车”等具体对象可得到 “轿车”类,
而这些具体的对象就是该类的实例。如图5-3所示。
5.2 面向对象的相关概念
课堂讨论:
(1) 什么是对象及其三要素?什么是类及实例? (2) 怎样理解继承及多态性?举例说明。
5.3 面向对象分析
5.3 面向对象分析
面向对象分析(OOA)的目标是获取用户需求并 建立一系列问题域的精确模型,描述满足用户需要的软 件。OOA所建立的模型应表示出系统的数据、功能和行 为3方面的基本特征。先要进行调研分析,在理解需求 的基础上建立并验证模型。
(a)
(b)
图5-7 表示类、关联关系和链属性
(c)
5.3 面向对象分析
使用OMT建立对象模型的主要步骤为: (1) 确定对象类。通过分析确定所有的对象类; (2) 定义数据词典。主要用于描述类、属性和关系; (3) 组织并简化对象类。通过继承进行组织和简化对象类; (4) 测试访问路径。测试所有的访问路径; (5) 对象分组建立模块。 2. 建立动态模型 动态模型主要用于系统的控制逻辑,注重对象及其关系的改变,描述 涉及时序和改变的状态。动态模型包括状态图和事件跟踪图。建立动态模 型的主要步骤为: (1) 准备场景。为典型的交互序列准备好场景; (2) 建立事件跟踪图。确定对象之间的事件,为每个场景建立事件跟踪 图; (3) 绘出事件流程图。为每个系统准备一个事件流程图; (4) 建立状态图。为具有重要动态行为的类建立状态图; (5) 检验。检验不同状态图中共享的事件的一致性和完整性。
5.1 面向对象方法概述
OOSE 的开发活动主要分为分析、构造和测试三个过程,如图5-1所示。
图5-1 OOSE 的开发活动
5.1 面向对象方法概述
用例(Use case)是贯穿OOSE 活动的核心,描述了 系统的需求及功能。用例实际上是从使用者的角度来确 定系统的功能,描述系统用户(也称使用者)对于系统 的使用情况。图5-2所示,使用者以人形表示,椭圆表 示用例,大的矩形框表示系统的边界。用连接使用者和 用例的箭头线,表示使用者驱动事件的完成。
5.1.1 面向对象方法的概念
Coad和Yourdon为面向对象(Object Oriented,OO) 给出的定义: 面向对象= 对象 + 类 + 继承 + 消息通信,具有这4个概念的软件开 发方法称为面向对象方法OOM。基本出发点是尽量按照人类认识 世界的方法和思维方式来分析和解决问题,以解决问题中所涉及 到的各种对象为主体,面向对象方法学的出发点和基本原则,使 软件开发的方法和过程尽可能接近人类认识现实世界解决问题的 方式方法。只有同时使用对象、类、继承与消息通信,才能体现 面向对象的特征和方法。
5.3 面向对象分析
5.3.2 面向对象分析的过程
OOA是利用面向对象的概念和方法为软件需求建造模型,使用 户需求逐步精确化、一致化、完全化的分析过程,也是提取需求的 过程,主要包括理解、 表达和验证3个过程。OOA中建造的模 型主要有对象模型、动态模型和功能模型3种。对象模型常由五个层 次组成:类与对象层、属性层、服务层、结构层和主题层,其层次 对应着OOA过程中建立对象模型的五项主要活动:发现对象、定义 类、定义属性、定义服务、设别结构。? OOA过程如图5-6所示。
5.3 面向对象分析
2.面向对象分析的任务 OOA的关键是定义所有与待解决问题相关的类,包括类的操作和属 性、类与类之间的关系以及它们表现出的行为,主要完成6项任务: (1)全面深入调研分析,掌握用户业务需求细节及流程; (2)准确标识类,包括定义其属性和操作; (3)认真分析定义类的层次关系; (4)明确表达对象与对象之间的关系(对象的连接); (5)具体确定模型化对象的行为;
5.2 面向对象的相关概念
5.2.3 消息与方法
1) 消息与消息通信 消息(Message)是向对象发出的服务请求,包含信息为: 提供服务的对象标识、消息名、输入信息和回答信息。 消息通信(Communication with messages)与对象的封装原则密 切相关。 2)方法 方法(Method) 指在对象内的操作。数据描述对象的状态,操 作可操纵私有数据,改变对象的状态。当其他对象向该对象发出 消息并响应时,其操作才得以实现。方法是类中操作的实现过程, 一个方法包括方法名、参数及方法体。
5.1 面向对象方法概述
5.1.2 面向对象方法的特点 面向对象的开发方法OOSD是一种新的软件工程方法,其基 本思想是尽可能按照人类认识世界的方法和思维方式分析和解决 问题,可提供更加清晰的需求分析和设计,是指导软件开发的系 统方法。OOSD贯穿于整个软件生命期,其中面向对象的分析与 设计是面向对象开发的关键。OOM具有4个主要特点: (1)符合人类分析解决问题的习惯思维方式。 (2)各阶段所使用的技术方法具有高度连续性。 (3)开发阶段有机集成有利系统稳定。 (4)重用性好。
相关文档
最新文档