在面向对象软件开发过程中,设计模式的采用是为了______。 A.允许在非面向对象程序设计语言中使用面向对象的概念 B.复用成功的设计和体系结构 C.减少设计过程创建的类的个数 D.保证程序的运行速度达到最优值

admin2012-02-19  58

问题 在面向对象软件开发过程中,设计模式的采用是为了______。
A.允许在非面向对象程序设计语言中使用面向对象的概念
B.复用成功的设计和体系结构
C.减少设计过程创建的类的个数
D.保证程序的运行速度达到最优值

选项 A、 
B、 
C、 
D、 

答案B

解析 随着面向对象技术的出现和广泛使用,一方面,软件的可重用性在一定程度上已经有所解决;另一方面,对软件可重用性的要求也越来越高。设计面向对象的软件很难,而设计可重复使用的面向对象的软件难度更大。开发人员必须找到适当的对象,将它们分解到粒度合适的类、定义类接口和继承体系,并建立它们之间的关键联系。
   在某些时候,设计师的设计可能是针对当前的具体问题而进行的,但它应该可能通用到足以适应未来的问题和需求。因为他们总是希望避免重复设计,至少将之减少到最低水平。在一个设计完成之前,有经验的面向对象的设计师往往要重复使用若干次,而且每次都要进行改进。他们知道,不能只用最初的方法解决每个问题,常常重复使用那些过去用过的解决方案。当他们找到一个好的解决方案时,总是一次又一次地使用它。这些经验也正是他们成为专家的法宝,这就是设计经验的价值。
   因此,我们可将设计面向对象软件的经验记录成设计模式。每个设计模式都有系统的命名、解释和评价了面向对象系统中一个重要的设计。我们的目标是将设计经验收集成人们可以有效利用的模型。为此,可以记录一些最重要的设计模式,并以目录形式表现出来。
   利用设计模式可方便地重用成功的设计和结构。把已经证实的技术表示为设计模式,使它们更加容易被新系统的开发者所接受。设计模式帮助设计师选择可使系统重用的设计方案,避免选择危害到可重用性的方案。设计模式还提供了类和对象接口的明确的说明书和这些接口的潜在意义,来改进现有系统的记录和维护。
   Gamma在他的博士论文中总结了一系列的设计模式,做出了开创性的工作。他用一种类似分类目录的形式将设计模式记载下来。我们称这些设计模式为设计模式目录。根据模式的目标(所做的事情),可以将它们分成创建性模式、结构性模式和行为性模式。创建性模式处理的是对象的创建过程,结构性模式处理的是对象和类的组合,行为性模式处理类和对象间的交互方式和任务分布。根据它们主要的应用对象,又可以分为主要应用于类的和主要应用于对象的。Gamma在他的博士论文中总结了23种设计模式,这些模式也是目前用得最多的模式。
转载请注明原文地址:https://kaotiyun.com/show/Q3GZ777K
0

相关试题推荐
最新回复(0)