面向对象分析与设计
- 格式:doc
- 大小:21.00 KB
- 文档页数:2
1.面向对象的基本原则主要有:抽象、分类、封装、消息通信、多态性、行为分析和复杂性控制。
2.多态:一般类和特殊类可以有相同格式的属性或操作,但这些属性或操作具有不同的含义。
3.封装的目的是什么?在面向对象方法中封装的目的是如何达到的?
使对象能够集中而完整地对应并描述具体的事物,体现事物的相对独立性,增加了对象的内聚度。
对象的外部只允许通过由对象提供的外部可用的操作来访问其内部,这也降低了对象间的耦合度。
面向对象方法中的封装就是用对象把属性和操纵这些属性的操作包装起来,形成一个独立的单元。
4.面向对象的主要优点?
①改变了开发软件的方式。无论是系统的构成成分,还是通过这些成分之间的关系而体现的系统结构,都可以直接映射到问题域。
②使得客观世界到计算机的语言鸿沟变窄。
③使分析与设计之间的鸿沟变窄
④有助于软件的维护与复用
⑤有助于提高软件的质量和生产率
5.UML2.4规范由四个部分组成:基础结构、上层结构、对象约束语言和图交换。
6.UmL2.4支持的模型图在逻辑上分为两大类:结构图(静态)和行为图(动态)。
结构图:类图、包图、对象图、组合结构图、构件图、部署图、外扩图。
行为图:用况图、顺序图、状态机图、活动图、交互图、交互概览图、通信图、定时图。
7.什么是OOA以及与OOD的区别?
Object-Oriented Analysis,就是运用面向对象方法进行进行系统分析。强调运用面向对象方法,对问题域和系统责任进行分析与理解,找出描述问题域和系统责任所需要的对象,定义对象的属性、操作以及对象之间的关系,目标是建立一个符合问题域、满足用户需求的OOA模型。
而Object-Oriented Design,是针对系统的一组具体的实现条件,继续运用面向对象的建模语言进行系统设计。包括两个方面:①根据实现条件对OOA模型做某些必要的修改和调整②针对具体实现条件,建立人机界面、数据存储和控制驱动等模型。
关系:OOA和OOD追求的目标不同,但采用一致的概念、原则和表示法,OOD以OOA 为基础,只需必要的修改和调整,或补充某些细节,并增加几个与实现有关的相对独立部分。因此,OOA与OOD之间不存在像传统方法中那样的分析与设计之间的鸿沟,二者能紧密衔接,大大降低了从OOA过渡到OOD的难度和出错率。
8.软件中的分析面临的主要问题:对问题域和系统责任的正确理解、人与人之间的正确交流、如何应对需求的不断变化以及软件复用对分析的要求。
9.问题域:被开发系统的应用领域。系统责任:被开发系统应该具备的职能。
10.OOA模型?P19 OOD模型?P105
11.类图的主要构成成分:类、属性、操作、泛化、关联和依赖。
①对象层:给出系统中所有反映问题域与系统责任的对象。
②特征层:给出每一个类(及其所代表的对象)的内部特征,即给出每个类的属性和操作。
③关系层:给出各个类(及其所代表的的对象)彼此之间的关系。
12.如何画用例图(注:要有用例的描述)?P25
13.用况图:是一副由参与者、用况以及这些元素之间的关系组成的图。
14.如何画类图?P50
15.主动对象:具有主动行为的对象,再设计阶段是拥有线程或进程并启动控制活动的对象。主动对象是线程或进程中最先开始执行的对象。
作用:用于描述问题域中具有主动行为的事物以及在系统设计时识别的控制流。
16.类属性和实例属性的表示法P45
17.属性的可见性:+(公有的)-(受保护的)#(私有的)-(包范围的)
18.类之间的三种关系:继承(泛化)、关联和依赖。
19.关联:是一个或一组类的对象集合的笛卡尔积上的一个子集合,这种类间的关系用于刻画同种或异种类别事物间的关系。
例:类”教师”和类”学生”之间存在着的关系”指导论文”可定义为:
指导论文={
20.通常在关联的两端写有表示数量约束的数字或符号,把它们称为关联的多重性。
A(Ma)--------------B(Mb)
多重性Ma:对于B的任何一个对象,有多少个A的对象可能与之有关。
多重性Mb:对于A的任何一个对象,有多少个B的对象可能与之有关。
21.P66 一般类与特殊类之间的关联。(明确含义)
22.聚合:是表示整体的类和表示部分的类之间的”整体--部分”关系;
组合:也是”整体--部分”关系,但是组合关系中部分和整体是有统一的生存期。
23.依赖:表明一个元素的定义或实现依赖另一个元素的定义或实现。
在UML中,依赖可以使用在多种建模元素(如类、用况和构件)上,例如,在用况图中使用的《include》和《extend》
24.接口:声明了一组操作,用以刻画模型元素对外提供的服务或者它所需要的外部服务。
25.顺序图中的控制操作符
①可选执行(opt) ②条件执行(alt) ③并行执行(par) ④循环执行(loop)
26.状态机图:描述了一个对象在其生命周期内因响应事件所经历的状态序列以及对这些时间所做出的反应。
27.事件:指在时间和空间上可以定位并具有实际意义、值得注意的所发生的事情。
28.对多继承的调整?P110对多态性的调整?P113
29.P122 从用况分析人机交互
30.进程:是具有一定独立功能的程序的一次执行的过程。
31.线程:在一个进程内部可定义一些能够分别占用处理机,而且要同时进行计算的执行单位,这样的每一个单位就是一个线程。
32.数据库:是长期存在计算机内、有组织、可共享的数据的集合。
33.关系数据库:就是采用关系模型的数据库。
34.目前典型的系统:文件系统、关系数据库系统和面向对象数据库系统。
35.P145例题