软件设计模式试题集_附答案
软件设计师 试题答案

软件设计师试题答案随着信息技术的迅猛发展,软件设计师的需求也越来越大。
作为一名软件设计师,你需要具备丰富的软件开发经验和深入的技术知识。
在这篇文章中,我将为你提供软件设计师试题的详细答案。
试题一:请解释什么是软件设计模式?列举并解释三种常见的软件设计模式。
答案:软件设计模式是在软件开发过程中常用的解决问题的方法。
它们是针对特定类型问题的经验总结,能够提高代码的可复用性、维护性和扩展性。
1. 工厂模式(Factory Pattern):它是一种创建型模式,用于创建对象而不直接暴露创建逻辑。
工厂模式通过定义一个公共接口来创建对象,从而将对象的创建与使用分离开来,提高了代码的灵活性。
2. 观察者模式(Observer Pattern):它是一种行为型模式,用于对象之间的一对多依赖关系。
观察者模式定义了一种一对多的依赖关系,使得当一个对象的状态发生改变时,所有依赖于它的对象都能得到通知并自动更新。
3. 单例模式(Singleton Pattern):它是一种创建型模式,用于确保一个类只有一个实例,并提供全局访问点。
单例模式通过将类的构造函数设为私有,防止外部直接实例化对象,同时提供一个静态方法来获取唯一实例。
试题二:请列举并解释五个常见的软件开发原则。
答案:软件开发原则是在软件开发过程中指导性的准则,有助于提高代码的可读性、可维护性和可扩展性。
1. 单一职责原则(Single Responsibility Principle):一个类只负责一个功能,保持类的职责单一,避免功能交叉和影响。
2. 开放封闭原则(Open Closed Principle):软件实体应该对扩展开放,对修改关闭。
通过使用抽象类、接口和多态来实现。
3. 里氏替换原则(Liskov Substitution Principle):父类的任何地方都可以使用其子类的对象。
子类必须完全实现父类的方法,并不得修改其原有的行为。
4. 接口隔离原则(Interface Segregation Principle):一个接口应该只提供客户端所需的方法,避免接口臃肿和功能冗余。
软件体系结构与设计模式期末复习

体系结构期末复习一、选择题(一)1. 设计模式的基本原理是( C )A.面向实现编程B.面向对象编程C.面向接口编程D.面向组合编程2. 设计模式的两大主题是( D )A.系统的维护与开发B.对象组合与类的继承C.系统架构与系统开发D.系统复用与系统扩展3. 依据设计模式思想,程序开发中应优先使用的是( A )关系实现复用。
A.组合聚合B.继承C.创建D. .以上都不对4. 关于继承表述错误的是( D )A.继承是一种通过扩展一个已有对象的实现,从而获得新功能的复用方法。
B.泛化类(超类)可以显式地捕获那些公共的属性和方法。
特殊类(子类)则通过附加属性和方法来进行实现的扩展。
C.破坏了封装性,因为这会将父类的实现细节暴露给子类。
D.继承本质上是“白盒复用”,对父类的修改,不会影响到子类。
5. 常用的设计模式可分为( A )A.创建型、结构型和行为型B.对象型、结构型和行为型C.过程型、创建型和结构型D.抽象型、接口型和实现型6. “不要和陌生人说话”是对( D )设计原则的通俗表述。
A.接口隔离B.里氏代换C.依赖倒转D. .迪米特法则7. 在适配器模式中,对象适配器模式是对( A )设计原则的典型应用A.合成聚合B.里氏代换C.依赖倒转D. .迪米特法则8. 将一个类的接口转换成客户希望的另一个接口,这句话是对(C)设计模式的描述A.策略模式B.桥接模式C.适配器模式D.单例模式9. 以下设计模式中属于结构模式的是( D )A. 观察者模式B.单例模式C.策略模式D.外观模式10. 以下不属于对象行为型模式是( D )A. 命令模式B.策略模式C.访问者模式D.桥接模式11. 下面的类图表示的是哪个设计模式( D )A. 抽象工厂模式B.观察者模式C.策略模式D.桥接模式12. Open-Close开闭原则的含义是一个软件实体( A )A.应当对扩展开放,对修改关闭。
B.应当对修改开放,对扩展关闭。
工业软件设计考试题及答案

工业软件设计考试题及答案一、单项选择题(每题2分,共20分)1. 工业软件设计中,以下哪个不是用户界面设计的基本要素?A. 布局B. 颜色C. 交互D. 代码答案:D2. 在工业软件设计中,哪种类型的软件通常用于模拟和分析?A. 文字处理软件B. 电子表格软件C. 计算机辅助设计(CAD)软件D. 数据库管理软件答案:C3. 工业软件设计中,以下哪个不是软件测试的目的?A. 验证软件功能B. 发现软件缺陷C. 评估软件性能D. 增加软件功能答案:D4. 在工业软件设计过程中,以下哪个步骤是用于确定软件需求的?A. 需求分析B. 系统设计C. 编码实现D. 测试与部署答案:A5. 工业软件设计中,以下哪个不是软件维护的类型?A. 纠错性维护B. 适应性维护C. 完善性维护D. 初始开发答案:D6. 在工业软件设计中,以下哪个不是软件工程的基本原则?A. 可维护性B. 可扩展性C. 可移植性D. 唯一性答案:D7. 工业软件设计中,以下哪个不是软件项目管理的关键组成部分?A. 范围管理B. 时间管理C. 风险管理D. 产品管理答案:D8. 在工业软件设计中,以下哪个不是软件架构设计的目的?A. 提高软件质量B. 降低开发成本C. 增加开发时间D. 提升软件性能答案:C9. 工业软件设计中,以下哪个不是软件需求分析的方法?A. 用例分析B. 数据流图C. 状态转换图D. 代码审查答案:D10. 在工业软件设计中,以下哪个不是软件配置管理的目的?A. 控制软件变更B. 维护软件版本C. 提高开发效率D. 降低软件质量答案:D二、多项选择题(每题3分,共15分)1. 工业软件设计中,以下哪些因素会影响软件的性能?A. 算法效率B. 硬件配置C. 用户界面设计D. 网络带宽答案:A, B, D2. 在工业软件设计中,以下哪些是软件测试的类型?A. 单元测试B. 集成测试C. 系统测试D. 维护测试答案:A, B, C, D3. 工业软件设计中,以下哪些是软件质量的度量指标?A. 可靠性B. 可用性C. 效率D. 可维护性答案:A, B, C, D4. 在工业软件设计中,以下哪些是软件项目管理的工具?A. 甘特图B. 燃尽图C. 风险矩阵D. 需求跟踪矩阵答案:A, B, C, D5. 工业软件设计中,以下哪些是软件架构设计的原则?A. 分层架构B. 模块化C. 松耦合D. 重用性答案:A, B, C, D三、简答题(每题10分,共30分)1. 简述工业软件设计中用户界面设计的重要性。
软件设计模式与应用实例考核试卷

C.叶节点类
D.组合类
18.以下哪个模式用于封装一系列的行为,并将每一个行为封装为一个对象?()
A.策略模式
B.模板方法模式
C.状态模式
D.职责链模式
19.在中介者模式中,以下哪个角色负责定义与各个同事类相互作用的接口?()
A.中介者
B.同事类
C.客户端
D.抽象中介者
20.以下哪种模式主要用于在系统中分离抽象和实现部分?()
10. ______模式通过定义一个中介对象来简化原有对象之间的交互关系。
四、判断题(本题共10小题,每题1分,共10分,正确的请在答题括号中画√,错误的画×)
1.设计模式是为了解决软件设计中的特定问题而提出的一系列解决方案。()
2.单例模式保证一个类仅有一个实例,并提供一个访问它的全局访问点。()
A.抽象工厂
B.具体工厂
C.抽象产品
D.具体产品
8.以下哪种情况适合使用策略模式?()
A.算法的稳定不变
B.多个类只区别在表现行为不同
C.需要控制对象的创建
D.需要简化对象的组合
9.适配器模式的目的是()
A.将一个接口转换成客户希望的另一个接口
B.封装多个对象为一个对象
C.定义一个操作中的算法的骨架
3.装饰器模式在不改变接口的前提下,动态地给一个对象添加一些额外的职责。与代理模式区别在于,代理模式控制对对象的访问,装饰器模式则是添加职责。
4.命令模式将请求封装成对象,实现请求的发送者和接收者解耦。优点:易于扩展新命令,可以组合命令,支持撤销操作等。在图形编辑软件中,每个图形操作可对应一个命令对象。
A.命令模式
B.观察者模式
C.职责链模式
软件设计模式与应用复习 题集附答案

软件设计模式与应用复习题集附答案软件设计模式是软件工程领域的重要概念之一,它为程序员提供了一种可以重用的解决方案。
通过使用设计模式,程序员可以更加高效地开发出可靠且可维护的软件系统。
本文将对软件设计模式与应用进行复习,并附带一些题目和答案,以便读者检验自己的掌握程度。
1. 设计模式的概念及分类设计模式是指在软件设计中常见的问题,并提供了相应的解决方案。
根据其目的和使用方式,设计模式可以分为三类:创建型模式、结构型模式和行为型模式。
- 创建型模式:主要关注对象的创建过程,包括简单工厂模式、工厂方法模式、抽象工厂模式、建造者模式和原型模式。
- 结构型模式:主要关注对象之间的组合关系,包括适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式和享元模式。
- 行为型模式:主要关注对象之间的通信和协作方式,包括策略模式、模板方法模式、观察者模式、迭代器模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式和解释器模式。
2. 设计模式的使用场景设计模式可以在特定的场景中被应用,以解决相应的问题。
- 简单工厂模式:当需要根据输入参数来决定创建哪个具体对象时,可以使用简单工厂模式。
- 观察者模式:当一个对象的改变需要通知其他对象进行相应处理时,可以使用观察者模式。
- 模板方法模式:当要定义一组算法中的某个步骤,并且允许子类为该步骤提供实现细节时,可以使用模板方法模式。
- 代理模式:当需要为一个对象提供一个代理,以控制对象的访问时,可以使用代理模式。
- 中介者模式:当多个对象之间的交互需要进行解耦时,可以使用中介者模式。
3. 题目与答案以下是一些与软件设计模式与应用相关的题目,附带了答案供读者参考。
题目一:简述工厂方法模式的原理及应用场景。
答案一:工厂方法模式是一种创建型模式,它通过定义一个用于创建对象的接口,由子类决定具体实例化的对象类型。
工厂方法模式可以在不暴露具体创建逻辑的情况下,实现对象的实例化。
软件设计师试题及参考答案

软件设计师试题及参考答案一、选择题1. 以下哪一项不是软件工程的基本目标?A. 提高软件的生产率B. 提高软件的可维护性C. 减少软件的复杂性D. 提高软件的性能答案:D2. 下面哪种方法不属于软件需求分析的方法?A. 结构化分析方法B. 数据流图C. 实体关系图D. 原型法答案:C3. 以下哪种编程范式主要关注函数的一等公民和不可变性?A. 面向对象编程B. 过程式编程C. 函数式编程D. 逻辑编程答案:C4. 在软件测试过程中,以下哪个阶段是测试计划的制定阶段?A. 单元测试B. 集成测试C. 系统测试D. 测试计划答案:D5. 以下哪种设计模式主要用于解决接口污染问题?A. 单例模式B. 工厂模式C. 策略模式D. 适配器模式答案:D二、填空题1. 软件开发过程中的瀑布模型主要包括以下阶段:需求分析、______、设计、编码、测试、维护。
答案:可行性研究2. 在面向对象编程中,继承、封装和多态是三大基本特性,其中______是指允许不同类的对象对同一消息做出响应。
答案:多态3. 软件设计模式分为创建型、结构型和行为型三种类型,其中创建型模式主要关注对象的创建过程,结构型模式主要关注类和对象之间的______。
答案:关系4. 在软件测试过程中,回归测试是指对已经通过的测试用例进行再次测试,以验证修改后的软件是否仍然保持原有的______。
答案:功能5. 以下哪种编程语言是函数式编程语言的代表?答案:Haskell三、判断题1. 在软件开发过程中,需求分析是整个项目的基础,它决定了项目的成功与否。
(正确)2. 软件设计模式是针对特定问题的通用解决方案,它可以帮助我们提高代码的可复用性和可维护性。
(正确)3. 在面向对象编程中,继承意味着子类可以继承父类的属性和方法。
(正确)4. 软件测试的目的是找出软件中的错误,而不是证明软件是正确的。
(正确)5. 单元测试是针对软件中最小的可测试单元进行的测试,它可以帮助我们确保每个模块的功能正确。
设计模式考试复习试题[含答案解析]
![设计模式考试复习试题[含答案解析]](https://img.taocdn.com/s3/m/df74e5c7551810a6f52486ad.png)
一、1. 设计模式一般用来解决什么样的问题: A.同一问题的不同表相2. 下列属于面向对象基本原则的是: C.里氏代换3. Open-Close原则的含义是一个软件实体:A.应当对扩展开放,对修改关闭.4. 当我们想创建一个具体的对象而又不希望指定具体的类时,使用(A)模式。
A.创建型5. 要依赖于抽象不要依赖于具体。
即针对接口编程不要针对实现编程:(D)依赖倒转原则6. 依据设计模式思想,程序开发中应优先使用的是( A )关系实现复用。
A, 委派7. 设计模式的两大主题是( D ) D.系统复用与系统扩展8. 单体模式中,两个基本要点(AB)和单体类自己提供单例A .构造函数私有 B.唯一实例9. 下列模式中,属于行为模式的是( B ) B观察者10. “不要和陌生人说话”是( D )原则的通俗表述 D.迪米特1. 软件体系结构是指一个系统的有目的的设计和规划,这个设计规划既不描述活动,也不描述系统怎样开发,它只描述系统的组成元素及其相互的交互协作。
2.一个UML模型只描述了一个系统要做什么,它并没告诉我们系统是怎么做。
3.接口是可以在整个模型中反复使用的一组行为,是一个没有属性而只有方法的类。
4.多重性指的是,某个类有多个对象可以和另一个类的一对象关联。
5.当一个类的对象可以充当多种角色时,自身关联就可能发生。
6.在泛化关系中,子类可以替代父类。
后前者出现的可以相同地方。
反过来却不成立。
7.最通常的依赖关系是一个类操作的形构中用到了另一个类的定义。
8.组成是强类型的聚集,因为聚集中的每个部分体只能属于一个整体。
9.实现的符号和继承的符号有相似之处,两者的唯一差别是实现关系用虚线表示,继承关系用实线表示。
10. 设计模式中应优先使用对象组合而不是类继承。
1.适配器模式属于创建型模式结构型( F )2.在设计模式中,“效果”只是指“原因和结果”( T )3.设计模式使代码编制不能真正工程化( T )4.面向对象语言编程中的异常处理,可以理解为责任链模式(T )5.反模式就是反对在软件开发过程中使用设计模式分析:反模式用来解决问题的带有共性的不良方法(F )1.什么是设计模式?设计模式目标是什么?答:设计模式是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。
软件设计模式试题集(含答案)

3. 设计模式中一般都遵循的原则有什么?
开-闭原则,根据场景进行设计原则,优先组合原则,包容变化原则。
4. 四人团针对“创建优秀面向对象设计”建议了哪些策略?
针对接口编程,优先使用对象组合而不是类继承,找到并封装变化点。 第 6 章 facade(外观)模式
一.选择
1. 外观模式的作用是()。A.当不能采用生成子类的方法进行扩充时,动态地给一个对象添加一些
Façade 向客户展现使用现有系统的一个新的接口。如何实现:定义一个(或一组)新的类来封装所需的接口。 让新的类使用现有的系统。
2. 请简要说明在一个复杂系统中应用 Façade(外观)模式的优点。 当拥有一个复杂的系统时,Façade(外观)模 式使我们只需要使用它的一部分功能。最终我们将得到一个更简
假设有一个 Client 对象,这个对象必须处理 Database、Model、Element 类的对象。Client 必须首先通过 Database 对象打开数据库,以得到一个对 Model 对象的引用,然后再向 Model 对象请求一个 Element 对象,最后向 Element 对象查询所需的信息。而如果能创建一个 DatabaseFacade 类,让 Client 对象向它发出请求,那么上面的过程可能 就会变得简单一些。 2. 请举例说明 Facade 模式和 Adapter 模式使用场景的差异,并说明它们的解决方案及表现的特点。
包容类与需要的接口相匹配,并调用被包容类的方法。 4.
请简要说明在软件设计中设计模式的作用?
软件设计模式(Design Pattern)是一套被反复使用、多数人知晓的、经过分类编目的代码设计经验的总结。
使用设计模式是为了适应需求变化、可重用代码、让代码更容易被他人理解、保证代码的可靠性。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
3. 设计模式中一般都遵循的原则有什么?
开-闭原则,根据场景进行设计原则,优先组合原则,包容变化原则。
4. 四人团针对“创建优秀面向对象设计”建议了哪些策略?
针对接口编程,优先使用对象组合而不是类继承,找到并封装变化点。
第 6 章 facade(外观)模式
一.选择
1. 外观模式的作用是()。
A.当不能采用生成子类的方法进行扩充时,动态地给一个对象添加一些额外的功能。
的那些类可以一起工作。
2. Adapter 模式的最常见的用法是什么?该模式可以使你不用操心什么方面?
Adapter 模式最通常的用途就是保持多态。Adapter 模式让我们在进行设计时不必再担心现存类的接口问题。
3. Adapter 模式问题的解决方案以及如何实现?
解决方案是 Adapter 模式用我们需要的接口对无法修改的类进行包装。实现:将现存的类包含在另一个类之中。
3. Façade 模式不仅可以为方法调用创建更(简单)的接口,还可以减少客户必须处理的对象数量。
4. Façade 外观模式的解决方案是向客户展现使用现有系统的一个新的(接口)。
三.判断
1. Façade(外观)模式不仅可以为方法调用创建更简单的接口,还可以减少客户必须处理的对象数量。对
2. 外观模式,当不能采用生成子类的方法进行扩充时,动态地给一个对象添加一些额外的功能。错
D.Facade (外观)模式
4. 下面属于结构模式的有()。
A 观察者模式(Observer) B.单例模式(Singleton)
C.策略模式(Strategy)
D.外观模式(Façade)
二.填空
1. Facade 模式可以用来(隐藏)系统。该模式能够将系统作为自己的私有成员包含进来。
2. Façade 模式要解决的问题:只需要使用一个复杂系统的一个(子集)。或者,需要用一种特殊的方式与系统交互。
第 9 章 Bridge(桥接)模式
一.选择
1. 关于继承表述错误的是:( )。
A.继承是一种通过扩展一个已有对象的实现,从而获得新功能的复用方法。
B.超类可以显式地捕获那些公共的属性和方法。子类则通过附加属性和方法来进行实现的扩展。
C.在一定意义上说破坏了封装性,因为这会将父类的实现细节暴露给子类。
B.为了系统中的一组功能调用提供一个一致的接口,这个接口使得这一子系统更加容易使用。
C.保证一个类仅有一个实例,并提供一个访问他的全局访问点。
D.在方法中定义算法的框架,而将算法中的一些操作步骤延迟到子类中实现。
2. Façade(外观)模式的意图是()。
A. 希望简化现有系统的使用方法,你需要定义自己的接口。
3. Façade 模式为子系统中的一组接口提供的界面可能不一致。错
4. Façade 外观模式只能为方法调用创建更简单的接口,不能减少客户必须处理的对象数量。错
四.名词解释
1. Façade 模式
模式定义了一个高层接口,使得这一子系统更加容易使用,为子系统中的一组接口提供一个一致的界面。
2. 接口
4. 设计模式的两大主题是系统复用与系统扩展。对
四.名词解释
1. 设计模式
是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、
让代码更容易被他人理解、保证代码可靠性。
2. 模板
模式定义一个操作中的算法的骨架,而将一些步骤延迟到子类中。
3. 模式
就是解决某一类问题的方法论。把解决某类问题的方法总结归纳到理论高度,那就是模式。
第 7 章 Adapter(适配器)模式
一.选择
1. Adapter(适配器)模式的意图是()。
A. 希望简化现有系统的使用方法。你需要定义自己的借口。
B.将一个无法控制的现有对象与一个特定借口相匹配。
C. 将一组实现部分从另一组使用它们的对象中分离出来。
D.你需要为特定的客户(或情况)提供特定系列的对象。
4. 在 Facade 模式中,客户是如何使用子系统的?
六.应用题
1. 请论述在一个系统中应用 Façade(外观)模式的必要性,并给出一种解决方案。
Façade(外观)模式不仅可以为方法调用创建更简单的接口,还可以减少客户必须处理的对象数量。举个例子。
假设有一个 Client 对象,这个对象必须处理 Database、Model、Element 类的对象。Client 必须首先通过 Database
A.系统的维护与开发
B.对象组合与类的继承
C.系统架构与系统开发
D.系统复用与系统扩展
4. 以下哪些问题通过应用设计模式不能够解决 。()
A)指定对象的接口
B)针对接口编程
C)确定软件的功能都正确实现
D)设计应支持变化
二.填空
1. 模式的基本要素包括名称、意图、问题、解决方案、参与者和协作者、(效果)、实现、GoF 参考。
2. 设计模式基本原则包括:开闭原则,(从场景进行设计的原则),包容变化原则。
3. 设计模式是一个(抽象)的方案,它可以解决一类问题。
4. 1. 在设计模式群体中,效果是指(原因和结果)。
三.判断
1. 适配器模式属于创建型模式。错
2. 在设计模式中,“效果”只是指“原因和结果”。 对
3. 设计模式使代码编制不能真正工程化。错
让新的类使用现有的系统。
2. 请简要说明在一个复杂系统中应用 Façade(外观)模式的优点。
当拥有一个复杂的系统时,Façade(外观)模式使我们只需要使用它的一部分功能。最终我们将得到一个更简
单,更容易使用的或根据我们的需要定制的系统。
3. Façade 模式的意图是什么?
望那个简化现有系统的使用方法,需要定义自己的接口。
C.适配器模式(Adapter) D.单例模式(Singleton)
4. 以下关于结构型模式说法不正确的是 。()
A)结构型模式可以在不破坏类封装性的基础上,实现新的功能。
B)结构型模式主要用于创建一组对象。
C)结构型模式可以创建一组类的统一访问接口。
D)结构型模式可以在不破坏类封装性的基础上,使得类可以同不曾估计到的系统进行交互。
4. Adapter 模式不是必须针对某个接口进行设计。错
四.名词解释
1. Adapter 模式
将一个类的接口转换成客户希望的另外一个接口。Adapter 模式使原本由于接口不兼容而不能一起工作的那些
类可以一起工作。
2. 对象 Adapter 模式
使用 Adapter 模式与适当的抽象类相匹配,它通常依赖于一个对象(适配对象)包含另一个对象(被适配对象)。
3. 类 Adapter 模式
当实现 Adapter 模式的方法是使用多重继承。在这种情况下,它被成为类 Adapter 模式。
4. 多态
相关的对象按照各自类型来实现方法的能力。
五.简答题
1. 给出 Adapter 模式的定义及意图。
意图是将一个类的接口转换成客户希望的另外一个接口。Adapter 模式使原本由于接口不兼容而不能一起工作
对象打开数据库,以得到一个对 Model 对象的引用,然后再向 Model 对象请求一个 Element 对象,最后向 Element
对象查询所需的信息。而如果能创建一个 DatabaseFacade 类,让 Client 对象向它发出请求,那么上面的过程可能
就会变得简单一些。
2. 请举例说明 Facade 模式和 Adapter 模式使用场景的差异,并说明它们的解决方案及表现的特点。
包容类与需要的接口相匹配,并调用被包容类的方法。
4. 请简要说明在软件设计中设计模式的作用?
软件设计模式(Design Pattern)是一套被反复使用、多数人知晓的、经过分类编目的代码设计经验的总结。
使用设计模式是为了适应需求变化、可重用代码、让代码更容易被他人理解、保证代码的可靠性。
六.应用题
4. 内聚度
模块内部各成分彼此结合的紧密程度。
五.简答题
1. 什么是设计模式?设计模式的目标是什么?
设计模式是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可
重用代码、让代码更容易被他人理解、保证代码可靠性。
2. 设计模式的基本要素有哪些?
名称,意图,问题,解决方案,参与者和协作者,效果,实现,GOF 参考。
2. 下面不属于创建型模式的有()。
A.抽象工厂模式( Abstract Factory ) B.工厂方法模式(Factory Method)
C.适配器模式 (Adapter)
D.单例模式(Singleton)
3. 将一个类的接口转换成客户希望的另一个接口。这句话是对下列哪种模式的描述()。
A. 策略模式(Strategies) B.桥接模式(Bridge)
B. 将一个无法控制的现有对象与一个特定借口相匹配。
C. 将一组实现部分从另一组使用它们的对象中分离出来。
D.你需要为特定的客户(或情况)提供特定系列的对象。
3. ()模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。
A. Adapter(适配器)模式
B. Bridge(桥接)模式
C. Strategy(策略)模式
越好,目的是针对一个现有的接口进行设计,并不能简化任何东西,即使可能有另一个更简单的接口。总之,在实
际应用中,Façade 模式简化接口,而 Adapter 模式将接口转换成另一个现有的接口。
2. 请说明什么是 Adapter 模式,Adapter 模式有哪几种形式?请举例说明?
第 8 章 扩展我们的视野
A 接口 B 继承机制 C 对象组合 D 委托