设计模式期中考试试题
一:单项选择(共20道,每道2分)
1、设计模式一般用来解决什么样的问题( )
A.同一问题的不同表相B不同问题的同一表相
C.不同问题的不同表相
D.以上都不是
2、下列属于面向对象基本原则的是( )
A.继承
B.封装
C.里氏代换D都不是
3、Open-Close原则的含义是一个软件实体( )
A.应当对扩展开放,对修改关闭.
B.应当对修改开放,对扩展关闭
C.应当对继承开放,对修改关闭
D.以上都不对
4、当我们想创建一个具体的对象而又不希望指定具体的类时,可以使用()模式。
A.创建型
B.结构型C行为型D.以上都可以
5、要依赖于抽象,不要依赖于具体。即针对接口编程,不要针对实现编程,是( )的表述
A.开-闭原则
B.接口隔离原则
C.里氏代换原则
D.依赖倒转原则
6、设计模式的两大主题是( )
A.系统的维护与开发 B 对象组合与类的继承
C.系统架构与系统开发
D.系统复用与系统扩展
7、“不要和陌生人说话” 是( )原则的通俗表述
A.接口隔离
B.里氏代换
C.依赖倒转
D.迪米特:一个对象应对其他对象尽可能少的了解
8、构造者的的退化模式是通过合并()角色完成退化的。
A.抽象产品B产品C创建者D使用者
9、以下关于简单工厂模式叙述错误的是()
A 它属于GoF23种设计模式
B 它是最简单的设计模式之一
C 它是学习其他创建型模式的基础
D 它只需要记住一个简单的参数即可获得所需对象的实例
E 它类中的方法通常为静态方法
F 它返回的类都有一个公共的父类和公共的方法
10、对象适配器模式是()原则的典型应用。
A.合成聚合复用原则
B.里式代换原则
C.依赖倒转原则
D.迪米特法则 D.以上表述全部错误。
11.对于依赖倒转的表述错误的是()
A.依赖于抽象而不依赖于具体,也就是针对接口编程。
B.依赖倒转的接口并非语法意义上的接口,而是,一个类对其他对象进行调用时,所知道的方法集合。
C.从选项B的角度论述,一个对象可以有多个接口。
D.实现了同一接口的对象,可以在运行期间,顺利地进行替换。而且不必知道所示用的对象是那个实现类的实例。
E.此题没有正确答案。
12. 现有5个产品族,分布于3各不同的产品等级结构,只要指明一个产品所处的产品族以及它所在的等级结构,就可以唯一地确认这个产品。那么使用抽象工厂方法模式只需要提供
()个具体工厂即可。
A 5
B 3
C 8
D 15
E 1
F 30
G 4
13.抽象工厂模式的优点有()
A 抽象工厂模式隔离了具体类的生成,使得客户并不需要知道什么被创建。
B 所有的具体工厂都实现了抽象工厂中定义的那些公共接口,因此只需改变具体工厂的实例,就可以在某种程度上改变整个软件系统的行为。
C 应用抽象工厂模式可以实现高内聚低耦合的设计目的,因此抽象工厂模式得到了广泛的应用。
D 增加新的具体工厂和产品族很方便,无须修改已有系统,符合“开闭原则”。
E 添加新的产品对象时,难以扩展抽象工厂来生产新种类的产品
F 开闭原则的倾斜性(增加新的工厂和产品族容易,增加新的产品等级结构麻烦)
14. 对于建造一辆汽车,使用建造者模式中ConcreteBulider(具体建造者)需要做的是()
A 提供汽车的各个部件的构造和装配方法
B 建造汽车
C 建造汽车部件并且组合成汽车
D 指挥汽车建造
E 定义抽象接口
15单例模式的最主要的思想是()
A 构造方法私有化
B 使用默认构造方
C 构造方法静态化
D 类私有化
E 类不允许被继承
F 类的方法不允许被访问
16. 在笔记本电脑用电的例子中,属于适配器的是()
A 充电器
B 插座
C 笔记本
D 笔记本电源插孔
17.桥接模式将继承关系转换为()关系,从而降低了类与类之间的耦合,减少了代码编写量
A 关联
B 多态
C 实现
D 重构
E 抽象
18. 组合模式描述了如何将容器对象和叶子对象进行()组合,使得用户在使用时无须对它们进行区分,可以一致地对待容器对象和叶子对象
A 递归
B 重构
C 并列
D 内置
E 关联
19. 面向对象设计原则首先都是()的原则,遵循这些设计原则可以有效地提高系统的复用性,同时提高系统的可维护性。
A 重载
B 复用
C 面向对象
D 封装
E 继承
F 多态G抽象
20. 结构型模式分为类模式和对象模式,以下可以是类模式的是()
A 适配器模式
B 桥接模式
C 组合模式
D 装饰模式
E 外观模式
F 享元模式
G 代理模式
二:多项选择题(共10道,每道3分)
1.以下说法错误的有()
A 对于面向对象的软件系统设计来说,在支持可维护性的同时,需要提高系统的可复用性。
B 迪米特法则要求一个软件实体应当尽可能多的与其他实体发生相互作用。
C 单一职责原则要求在软件系统中,一个类只负责一个功能领域中的相应职责。
D 开闭原则要求一个软件实体应当对扩展开放,对修改关闭,但是为了增强系统功能,可
以随便的修改源代码。
E 里氏代换原则可以通俗表述为在软件中如果能够使用基类对象,那么一定能够使用其子
类对象。
F 依赖倒转原则要求抽象不应该依赖于细节,细节应该依赖于抽象;要针对接口编程,不
要针对实现编程。
G 接口隔离原则要求客户端不应该依赖那些它不需要的接口,即将一些大的接口细化成一
些小的接口供客户端使用。
H 合成复用原则要求复用时尽量使用继承,而不使用对象组合。
2. 设计模式一般有如下几个基本要素:模式名称、问题、目的、解决方案、效果、实例代码和相关设计模式,其中的关键元素包括以下四个方面()
A 模式名称
B 问题
C 目的
D 解决方案
E 效果
F 实例代码
G 相关设计模式
3. 简单工厂模式包含三个角色是()
A 工厂角色
B 抽象产品口
C 具体产品角色
D 抽象接口角色
E 生产者角色
F 用户角色
G 使用者角色
4.工厂方法模式与简单工厂模式相比的优点有()
A 工厂方法模式很好的符合开闭原则
B 工厂方法类模式中工厂类职责变轻,业务逻辑相对简单
C 具体产品与工厂类之间的耦合降低
D工厂方法模式是简单工厂模式的进一步抽象和推广
E Factory类内的方法常使用静态方法
F 只提供一个工厂类
G不需要考虑对象的具体创建细节
闭原则的倾斜性(增加新的工厂和产品族容易,增加新的产品等级结构麻烦)
5. 建造者模式的优点有哪些()
A分步骤构建一个复杂的对象
B应对“复杂对象各个部分”的频繁需求变动
C用户使用不同的具体建造者即可得到不同的产品对象
D如果产品的内部变化复杂,可能会导致需要定义很多具体建造者类来实现这种变化,导致系统变得很庞大
E如果产品之间的差异性很大,则不适合使用建造者模式,因此其使用范围受到一定的限制
6.对于原型模式的优点有()
A当创建新的对象实例较为复杂时,使用原型模式可以简化对象的创建过程,通过一个已有实例可以提高新实例的创建效率。
B 可以动态增加或减少产品类。
C 原型模式提供了简化的创建结构。
D 可以使用深克隆的方式保存对象的状态。
E 实现深克隆时需要编写较为复杂的代码。
F 需要为每一个类配备一个克隆方法
7.单例模式的要点()
A 某个类只能有一个实例
B 必须自行创建这个实例
C 必须自行向整个系统提供这个实例
D 类的方法不能被访问
E 实例的创建个数不受限制
F 实例的创建者不受限制
8.适配器模式的优点()
A将目标类和适配者类解耦
B增加了类的透明性和复用性
C灵活性和扩展性都非常好,通过使用配置文件,可以很方便地更换适配器
D其使用有一定的局限性,不能将一个适配者类和它的子类都适配到目标接口。
E要想置换适配者类的方法不容易
9. 组合模式包含角色有()
A 抽象构件
B 叶子构件
C 容器构件
D 客户类
E 树根构
F 枝干构件
10桥接模式的优点()
A分离抽象接口及其实现部分。
B桥接模式提高了系统的可扩充性,在两个变化维度中任意扩展一个维度,都不需要修改原有系统。
C 实现细节对客户透明,可以对用户隐藏实现细节。
D桥接模式的引入会增加系统的理解与设计难度
E桥接模式要求正确识别出系统中两个独立变化的维度,因此其使用范围具有一定的局限性。
三:简答题(共2道题,每道10分)
1.什么是开--闭原则。
2.画出抽象工厂的类图。
四:读程序题(1道,每道10分)
读下面程序,并指出是何种模型,以及该模型都有那些角色
public class Bird{
public void tweedle(){
System.out.println("鸟儿叽叽叫!");
}
public void fly(){
System.out.println("鸟儿快快飞!");
}
}
public class BirdAdapter extends Bird implements Robot{ public void cry(){
System.out.print("机器人模仿:");
super.tweedle();
}
public void move(){
System.out.print("机器人模仿:");
super.fly();
}
}
public class Dog
{
public void wang()
{
System.out.println("狗汪汪叫!");
}
public void run()
{
System.out.println("狗快快跑!");
}
}
public class DogAdapter extends Dog implements Robot {
public void cry()
{
System.out.print("机器人模仿:");
super.wang();
}
public void move()
{
System.out.print("机器人模仿:");
super.run();
}
}
public interface Robot{
public void cry();
public void move();
}
public class Client{
public static void main(String args[]){
Robot robot=(Robot)XMLUtil.getBean();
robot.cry();
robot.move();
}
}
import javax.xml.parsers.*;
import org.w3c.dom.*;
import org.xml.sax.SAXException;
import java.io.*;
public class XMLUtil{
//该方法用于从XML配置文件中提取具体类类名,并返回一个实例对象
public static Object getBean(){
try{
//创建文档对象
DocumentBuilderFactory dFactory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = dFactory.newDocumentBuilder();
Document doc;
doc = builder.parse(new File("config.xml"));
//获取包含类名的文本节点
NodeList nl = doc.getElementsByTagName("className");
Node classNode=nl.item(0).getFirstChild();
String cName=classNode.getNodeValue();
//通过类名生成实例对象并将其返回
Class c=Class.forName(cName);
Object obj=c.newInstance();
return obj;
}
catch(Exception e){
e.printStackTrace();
return null;
}
}
}
-
2019年上半年软件设计师上午试题及答案 1.计算机执行指令的过程中,需要由()产生每条指令的操作信号并将信号送往相应的部件进行处理,以完成指定的操作。 A.CPU的控制器 B.CPU的运算器 C.DMA控制器 D.Cache控制器 2.DMA控制方式是在()之间直接建立数据通路进行数据的交换处理。 A.CPU与主存 B.CPU与外设 C.主存与外设 D.外设与外设 3.CPU访问存储器时,被访问数据一般聚集在一个较小的连续存储区域中。若一个存储单元已被访问,则其邻近的存储单元有可能还要被访问,该特性被称为() A.数据局部性 B.指令局部性 C.空间局部性 D.时间局部性 4.某系统由3个部件构成,每个部件的千小时可靠度都为R,该系统的千小时可靠度为(1-(1-R)2)R,则该系统的构成方式是()。 A.3个部件串联
B.3个部件并联 C.前两个部件并联后与第三个部件串联 D.第一个部件与后两个部件并联构成的子系统串联 5.在()校验方法中,采用模2运算来构造校验位。 A.水平奇偶 B.垂直奇偶 C.海明码 D.循环冗余 6.以下关于RISC (精简指令系统计算机)技术的叙述中,错误的是()。 A.指令长度固定、指令种类尽量少 B.指令功能强大、寻址方式复杂多样 C.增加寄存器数目以减少访存次数 D.用硬布线电路实现指令解码,快速完成指令译码 7.()防火墙是内部网和外部网的隔离点,它可对应用层的通信数据流进行监控和过滤。 A.包过滤 B.应用级网关 C.数据库 D.WEB 8.下述协议中与安全电子邮箱服务无关的是()。 A.SSL
B.HTTPS C.MIME D.PGP 9-10.用户A和B要进行安全通信,通信过程需确认双方身份和消息不可否认。A 和B通信时可使用()来对用户的身份进行认证;使用()确保消息不可否认。 A.数字证书 B.消息加密 C.用户私钥 D.数字签名 A.数字证书 B.消息加密 C.用户私钥 D.数字签名 11.震网(Stuxnet)病毒是一种破坏工业基础设施的恶意代码,利用系统漏洞攻击工业控制系统,是一种危害性极大的()。 A.引导区病毒 B.宏病毒 C.木马病毒 D.蠕虫病毒 12.刘某完全利用任职单位的实验材料、实验室和不对外公开的技术资料完成了一项发明。以下关于该发明的权利归属的叙述中,正确的是()。
设计模式期中考试试题 一:单项选择(共20道,每道2分) 1、设计模式一般用来解决什么样的问题( ) A.同一问题的不同表相B不同问题的同一表相 C.不同问题的不同表相 D.以上都不是 2、下列属于面向对象基本原则的是( ) A.继承 B.封装 C.里氏代换D都不是 3、Open-Close原则的含义是一个软件实体( ) A.应当对扩展开放,对修改关闭. B.应当对修改开放,对扩展关闭 C.应当对继承开放,对修改关闭 D.以上都不对 4、当我们想创建一个具体的对象而又不希望指定具体的类时,可以使用()模式。 A.创建型 B.结构型C行为型D.以上都可以 5、要依赖于抽象,不要依赖于具体。即针对接口编程,不要针对实现编程,是( )的表述 A.开-闭原则 B.接口隔离原则 C.里氏代换原则 D.依赖倒转原则 6、设计模式的两大主题是( ) A.系统的维护与开发 B 对象组合与类的继承 C.系统架构与系统开发 D.系统复用与系统扩展 7、“不要和陌生人说话” 是( )原则的通俗表述 A.接口隔离 B.里氏代换 C.依赖倒转 D.迪米特:一个对象应对其他对象尽可能少的了解 8、构造者的的退化模式是通过合并()角色完成退化的。 A.抽象产品B产品C创建者D使用者 9、以下关于简单工厂模式叙述错误的是() A 它属于GoF23种设计模式 B 它是最简单的设计模式之一 C 它是学习其他创建型模式的基础 D 它只需要记住一个简单的参数即可获得所需对象的实例 E 它类中的方法通常为静态方法 F 它返回的类都有一个公共的父类和公共的方法 10、对象适配器模式是()原则的典型应用。 A.合成聚合复用原则 B.里式代换原则 C.依赖倒转原则 D.迪米特法则 D.以上表述全部错误。 11.对于依赖倒转的表述错误的是() A.依赖于抽象而不依赖于具体,也就是针对接口编程。 B.依赖倒转的接口并非语法意义上的接口,而是,一个类对其他对象进行调用时,所知道的方法集合。 C.从选项B的角度论述,一个对象可以有多个接口。 D.实现了同一接口的对象,可以在运行期间,顺利地进行替换。而且不必知道所示用的对象是那个实现类的实例。 E.此题没有正确答案。 12. 现有5个产品族,分布于3各不同的产品等级结构,只要指明一个产品所处的产品族以及它所在的等级结构,就可以唯一地确认这个产品。那么使用抽象工厂方法模式只需要提供
设计模式试题 一.选择 1. 设计模式具有的优点()。 A.适应需求变化 B.程序易于理解 C.减少开发过程中的代码开发工作量 D.简化软件系统的设计 2. 设计模式一般用来解决什么样的问题( )。 A.同一问题的不同表相 B 不同问题的同一表相 C.不同问题的不同表相 D.以上都不是 3. 设计模式的两大主题是( )。 A.系统的维护与开发 B.对象组合与类的继承 C.系统架构与系统开发 D.系统复用与系统扩展 4. 以下哪些问题通过应用设计模式不能够解决。() A)指定对象的接口B)针对接口编程 C)确定软件的功能都正确实现D)设计应支持变化 二.填空 1. 模式的基本要素包括名称、意图、问题、解决方案、参与者和协作者、(效果)、实现、GoF 参考。 2. 设计模式基本原则包括:开闭原则,(从场景进行设计的原则),包容变化原则。 3. 设计模式是一个(抽象)的方案,它可以解决一类问题。 4. 1. 在设计模式群体中,效果是指(原因和结果)。三. 判断 1. 适配器模式属于创建型模式。错 2. 在设计模式中,“效果”只是指“原因和结果”。对 3. 设计模式使代码编制不能真正工程化。错 4. 设计模式的两大主题是系统复用与系统扩展。对四. 名词解释 1. 设计模式 是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。 2. 模板 模式定义一个操作中的算法的骨架,而将一些步骤延迟到子类中。 3. 模式 就是解决某一类问题的方法论。把解决某类问题的方法总结归纳到理论高度,那就是模式。 4. 内聚度 模块内部各成分彼此结合的紧密程度。五.简答 题 1. 什么是设计模式?设计模式的目标是什么?设计模式是一套被反复使用、多数人知晓的、经过分类编目的、代码 设计经验的总结。使用设计模式是为了可 重用代码、让代码更容易被他人理解、保证代码可靠性。 2. 设计模式的基本要素有哪些? 名称,意图,问题,解决方案,参与者和协作者,效果,实现,GOF 参考。 3. 设计模式中一般都遵循的原则有什么? 开-闭原则,根据场景进行设计原则,优先组合原则,包容变化原则。 4. 四人团针对“创建优秀面向对象设计”建议了哪些策略? 针对接口编程,优先使用对象组合而不是类继承,找到并封装变化点。 第6 章 facade(外观)模式 一.选择 1. 外观模式的作用是()。A.当不能采用生成子类的方法进行扩充时,动态地给一个对象添加一些 额外的功能。B.为了系统中的一组功能调用提供一个一致的接口,这个接口使得这一子系统更 加容易使用。
一、填空(共38分每空2分) 1、版面设计中可以加强各部分相关元素的相似性和集合性、 版面色彩的统一性和延续性,使画面增加美感和阅读效果。 2、点、线、面是组成视觉空间的基本元素,也是版面编排 设计中的主要视觉构成语言。 3、版面设计中要依据媒介形式、受众群体、诉求重点等客 观要求,进行统一规划、调度和安排。 4、版面设计中一般都是运用独特新颖、准确适当的方式将视觉元素组织编排起来, 将图片、文字和色彩集合于视觉空间中。 5、点、线、面的组合方式多种多样,位置、方向和大小等 的改变都能让版面呈现出不同的面貌。 6、对于一个版面来说,要做到吸引人的视觉注意力,利用人的视觉心理 和视觉生理吸引人的眼球,实现信息有效的传达,就必须把握视觉流程规律。
二、简答题(共32分每小题8分) 1、版面设计中视域的概念是什么? 答: 在版式设计中,存在着最佳的视觉区域。根据人们对阅读习惯的总结经验可知,物象被摆在不同的位置,会使画面置现出不同的视觉印象。明确了画面的主题信息诉求的主次关系,在视域内摆布视觉元素,才能带给观赏者视觉上的舒适感。信息内容超出视域宽度,眼睛必须不停地移动才能延续阅读,如字行过长不仅容易造成阅读的疲乏,更影响阅读速度。 在同一水平线上,左边的事物总是比右边的事物先进人人的视线;视图的上部与下部比较起来,上部给人以轻浮、虚无的感觉,下部则给人以踏实、稳定的感觉。 2、版面设计中视觉流程的概念是什么? 答: 视觉流程是指平面上各种不同元素的主次、先后关系,是设计上处理起始点和过程的一种阅读节奏,是人的视觉在接收外界信息时的空间流动程序。版面中存在着大量的信息,人们不能同时接收所有的物象信息,所以要按照一定的流动顺序进行运动,这些信息需要一个最佳的组合与合理的编排。因此,视觉流程设计尤为重要。 版面设计的视觉流程也被称为是一种“空间的运动”,就是视线会随各个视觉元素在空间内沿一定的轨迹运动。这种流动的线条并没有实实在在的出现,而是引导人的视线,依照设计师的意图来获取相关信息的“虚拟的线”。
编排设计 一、填空题(本大题共15空,每空2分,共30分) 1、、、是构成视觉的空间的基本元素,也是排版设计上的。 2、所谓编排,是寻求艺术手段来正确地表现,是一种、的活动。 3、电脑排版离不开艺术表现,美的形式原理是规范形式美感的。 4、是按照一定的条理、秩序、重复连续地排列,形成一种律动形式。 5、两个同一形的并列与均齐,实际上就是最简单的。 6、是排版设计的灵魂:它是一种的编排,能体现版面的科学性和条理性。 7、对比的最基本要素是显示和的效果。 8、调和是指适合、舒适、安定、统一,是的强调。 二、选择题(本大题共6小题,每小题5分,共30分) 1、版面构成要素包含() A.文字字体 B.线条线框和颜色色块 C.图片图形 全包含。 2、重复不会使设计产生的效果是() A.安定与整齐 B.趣味性 C.呆板与平淡 D.规律的统一 3、版式设计中韵律的作用不包含下列哪一项() A. 有节奏更有情调 B.增强版面的感染力 C.增加明朗的特性 D.开阔艺术的表现力 4、对称是同等同量的平衡。以下对称形式描述不正确的是() A.以中轴线为轴心的左右对称 B.以水平线为基准的左右对称
C.以对称点为源的放射对称 D.以对称面出发的反转形式 5、关于成功的排版设计,下列说法不正确的是() A.成功的排版设计,首先取决于良好的比例:等差数列、等比数列、黄金比等。 B.成功的排版特点是稳定、庄严、整齐、安宁、沉静。(对称与均衡的特点) C.成功的排版要从视觉上适合读者的视觉心理。 D.黄金比能求得最大限度的和谐,使版面被分割的不同部分产生相互联系。 6、构成秩序美的原理没有下列哪一项有() A.稳定与变化 B. 比例与韵律 C. 多样与统一 D.对称与均衡 三、简答题(共40分) 1、美的形式原理共八项,都包含哪些 编排设计参考答案: 一、填空题 7、点、线、面是构成视觉的空间的基本元素,也是排版设计上的主要语言。 8、所谓编排,是寻求艺术手段来正确地表现版面信息,是一种直觉性、创造性的 活动。
第5章设计模式 一.选择 1. 设计模式具有的优点()。 A.适应需求变化 B.程序易于理解 C.减少开发过程中的代码开发工作量 D.简化软件系统的设计 2. 设计模式一般用来解决什么样的问题( )。 A.同一问题的不同表相B不同问题的同一表相 C.不同问题的不同表相 D.以上都不是 3. 设计模式的两大主题是( )。 A.系统的维护与开发 B 对象组合与类的继承 C.系统架构与系统开发 D.系统复用与系统扩展 4. 以下哪些问题通过应用设计模式不能够解决。() A)指定对象的接口B)针对接口编程 C)确定软件的功能都正确实现D)设计应支持变化 解答: 1. A 2. A 3. D 4. C 二.填空 1. 模式的基本要素包括名称、意图、问题、解决方案、参与者和协作者、()、实现、G oF参考。 2. 设计模式基本原则包括:开闭原则,(),包容变化原则。 3. 设计模式是一个( )的方案,它可以解决一类问题。 4. 1. 在设计模式群体中,效果是指()。 解答: 1. 效果 2. 从场景进行设计的原则
3. 抽象 4. 原因和结果 三.判断 1. 适配器模式属于创建型模式。 2. 在设计模式中,“效果”只是指“原因和结果”。 3. 设计模式使代码编制不能真正工程化。 4. 设计模式的两大主题是系统复用与系统扩展。 解答: 1. 错 2. 对 3. 错 4. 对 四.名词解释 1. 设计模式 2. 模板 3. 模式 4. 内聚度 解答: 1. 是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性 2. 模式定义一个操作中的算法的骨架,而将一些步骤延迟到子类中。 3. 就是解决某一类问题的方法论。把解决某类问题的方法总结归纳到理论高度,那就是模式。 4. 五.简答题 1. 什么是设计模式?设计模式的目标是什么?
软件设计模式复习题 1、熟悉每个设计模式的定义、模式UML图解、模式使用情形以及模式优缺点。 2、设计模式的两大主题是什么? 3、设计模式分成几大类?每大类各包含哪些模式? 4、为什么要使用设计模式?使用设计模式有哪些好处? 5、比较抽象工厂模式和工厂方法模式相似性和差异性。什么情况下使用抽象工厂模式?什 么情形下使用工厂方法模式? 6、简述原型模式中浅层克隆和深度克隆的区别?分别给出代码说明。 7、模板方法和普通的实现类继承抽象类方式有何区别? 8、是比较和分析适配器模式和桥接模式之间的共性和差异性。 9、请用组合模式实现学校人事管理模式。 10、综合应用装饰模式、命令模式和状态模式实现工具条命令按钮鼠标进入时高亮显示 状态以及鼠标单击按钮后呈现凹陷状态,表明当前按钮为选中状态。 11、请阐述享元模式是如何节省系统内存的?试举例分析使用享元模式前后的内存节 约之比。 12、使用解析器模式实现对学生成绩表的查询输入语句进行解析并执行查询,成绩表结 14、试比较和分析中介者模式和观察者模式之间的相似性和差异性?两者是否能够相 互转化? 15、模板方法和普通的抽象类继承有什么区别? 16、使用访问者模式对12题中的学生信息进行报到。 1、熟悉每个设计模式的定义、模式UML图解、模式使用情形以及模式优缺点。(见书)答:单件模式: ○1单例模式:class Singleton{private static Singleton instance; private Singleton(){} public static Singleton GetInstance(){if (instance == null) { instance = new Singleton();} return instance; } 客户端代码:class Program{static void Main(string[] args) { Singleton s1 = Singleton.GetInstance(); Singleton s2 = Singleton.GetInstance(); if (s1 = = s2) {Console.WriteLine("Objects are the same instance");} Console.Read();}} ○2多线程时的单例(Lock是确保当一个线程位于代码的临界区时,另一个线程不进入临界区。如果其他线程试图进入锁定的代码,则它将一直等待(即被阻止),直到该对象被释放)class Singleton{private static Singleton instance; private static readonly object syncRoot = new object(); private Singleton(){} public static Singleton GetInstance(){lock (syncRoot) {
《版式设计》理论试题 姓名___________________ 班级516UI 分数___________________ 一、填空题:(2分/空) 1、点、线、面是构成视觉的空间的基本元素,也是排版设计上的主 要语言。 2、所谓编排,是寻求艺术手段来正确地表现版面信息,是一种直觉性、创 造性的活动。 3、电脑排版离不开艺术表现,美的形式原理是规范形式美感的基本法则。 4、节奏是按照一定的条理、秩序、重复连续地排列,形成一种律动形式。 5、两个同一形的并列与均齐,实际上就是最简单的对称形式。 6、秩序美是排版设计的灵魂:它是一种组织美的编排,能体现版面的科学性 和条理性。 7、对比的最基本要素是显示主从关系和统一变化的效果。 8、调和是指适合、舒适、安定、统一,是近似性的强调。 9、比例是形的整体与部分以及部分与部分之间数量的一种比率。 10、变异是规律的突破,是一种在整体效果中的局部突变。 11、变化与统一是形式美的总法则,统一的手法可借助均衡、调和、秩序等 形式法则。 12、排版设计实际上就是如何经营好点、线、面。
二、选择题:(5分/题) 1、版面构成要素包含() A.文字字体 B.线条线框和颜色色块 C.图片图形 D.ABC全包含。 2、重复不会使设计产生的效果是() A.安定与整齐 B.趣味性 C.呆板与平淡 D.规律的统一 3、版式设计中韵律的作用不包含下列哪一项?() A. 有节奏更有情调 B.增强版面的感染力 C.增加明朗的特性 D.开阔艺术的表现力 4、对称是同等同量的平衡。以下对称形式描述不正确的是() A.以中轴线为轴心的左右对称 B.以水平线为基准的左右对称 C.以对称点为源的放射对称 D.以对称面出发的反转形式 5、 6、关于成功的排版设计,下列说法不正确的是() A.成功的排版设计,首先取决于良好的比例:等差数列、等比数列、黄金比等。
软件设计模式(Java版)习题 第1章软件设计模式基础 1.1 软件设计模式概述 1.2 UML中的类图 1.3 面向对象的设计原则 一、名词解释 1.一个软件实体应当对扩展开放,对修改关闭,即在不修改源代码的基础上扩展 一个系统的行为。 2.一个对象应该只包含单一的职责,并且该职责被完整地封装在一个类中。 3.在软件中如果能够使用基类对象,那么一定能够使用其子类对象。 4.是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结, 使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。 二、单选择题 1.( A ) 2.( A ) 3. ( A ) 4. ( D ) 5. ( D ) 6.( A ) 7. ( D ) 8.( D ) 9.( D ) 10.( E ) 11.( C ) 12.( C ) 13. ( A ) 三、多选择题 1.( A、B、C、D ) 2. ( A、B ) 3.( A、D ) 4.( A、B、C、D ) 四、填空题 1.依赖倒转、迪米特法则、单一职责 2.模式名字、目的、问题、解决方案、效果、实例代码 3.超类、子类 4.开闭 5.用户 6.依赖倒转 7.组合/聚合 8.结构型、行为型 9.依赖倒转 10.开闭 11.需求收集是否正确、体系结构的构建是否合理、测试是否完全 12.人与人之间的交流 13.接口 14.名称、目的、解决方案 15.对象组合、类继承
16.对象组合 17.对象组合、类继承 18.抽象类的指针 五、简答题 1.答:设计模式按类型分为以下三类: 1)创建型设计模式:以灵活的方式创建对象集合,用于管理对象的创建。 2)结构型设计模式:将己有的代码集成到新的面向对象设计中,用于处理类或对象的组合。 3)行为型设计模式:用于描述对类或对象怎样交互和怎样分配职责。 2.答:设计模式的主要优点如下: 1)设计模式融合了众多专家的经验,并以一种标准的形式供广大开发人员所用,它提供了一套通用的设计词汇和一种通用的语言以方便开发人员之间沟通和交 流,使得设计方案更加通俗易懂。 2)设计模式使人们可以更加简单方便地复用成功的设计和体系结构,将已证实的技术表述成设计模式也会使新系统开发者更加容易理解其设计思路。设计模式使得重用成功的设计更加容易,并避免那些导致不可重用的设计方案。 3)设计模式使得设计方案更加灵活,且易于修改。 4)设计模式的使用将提高软件系统的开发效率和软件质量,且在一定程度上节约设计成本。 5)设计模式有助于初学者更深入地理解面向对象思想,一方面可以帮助初学者更加方便地阅读和学习现有类库与其他系统中的源代码,另一方面还可以提高软件的设计水平和代码质量。 3.答:设计模式一般有如下几个基本要素:模式名称、问题、目的、解决方案、效 果、实例代码和相关设计模式,其中的关键元素包括模式名称、问题、解决方案和效果。 4.答:正确使用设计模式具有以下优点: ⑴可以提高程序员的思维能力、编程能力和设计能力。 ⑵使程序设计更加标准化、代码编制更加工程化,使软件开发效率大大提高,从 而缩短软件的开发周期。 ⑶使设计的代码可重用性高、可读性强、可靠性高、灵活性好、可维护性强。 5.答:根据类与类之间的耦合度从弱到强排列,UML中的类图有以下几种关系:依赖关 系、关联关系、聚合关系、组合关系、泛化关系和实现关系。其中泛化和实现的耦合度相等,它们是最强的。
软件设计模式期末考试大纲 名词解释: 1、云计算? 答:云计算是将计算机,存储等资源以服务的形式提供给外部客户,并根据使用情况付费的新型计算模式。云计算具有高可用、高可伸缩、高性能、能够随时随地地通过多种终端进行访问的特点,这为用户带来了极大的便利。2、三层结构的优缺点? 答: 优点:(1)具有良好的灵活性和可扩展性 (2)开发语言独立 (3)具有可共享性 (4)具有较好的安全性 (5)增强了企业对象的重复可用性 (6)成为了真正意义上的瘦客户端从而具备了很高的稳定性、延展性和执行效率。 (7)可以将服务集中在一起管理,统一服务于客户端。从而具备了良好的容错能力和负载平衡能力。 缺点: 1、全网多级投资计划建设,建设模式不尽相同,缺乏统一规划和管理,难以达到全网最优化设计; 2、用户与内容距离远,北方网络基本上是三级网络结构,网络结构层次和网络管理层次增多,导致IP不必要的路由跳数,使得网络的性能指标下降 3、加大了以后扩容成本和维护成本 4、网络是按行政区划进行网络设计和路由组织,不能根据用户的实际需求灵活的调整和调度网络资源,同时使我们业务开展成本和业务维护成本增加。尤其是给全网性增值业务的开放带来困难 5、在骨干网节点存在骨干网设备和省网设备的背靠背连接,投资有较大浪费 3,P2P? 答:p2p体系结构是一种非集中架构,即在网络中国没有服务器或客户端的概念。在p2p体系结构模式中,网络中的每一个结点都被认为是一个对等点,他们拥有相同的地位,任何一个结点都可以请求服务和提供服务,也就是说每一个结点都是客户端,每一个结点都是服务器。 4,web服务 Web service 一个被设计成支持网络上的计算机对计算机的可互操作的软件系统,它包含一个自瞄述的接口进行交互。它是基于互联网的、开放性、基于xml数据交换传输协议的企业应用web服务器是向发出请求的浏览器提供文档的程序web服务器是指驻留于因特网上某种类型计算机的程序 5,网格计算的概念
文档收集于互联网,已重新整理排版.word 版本可编辑.欢迎下载支持. 1文档来源为:从网络收集整理.word 版本可编辑. 1、版 面设 计中 可以加强各部分相关元素的 相似性 和 集合性 、版面色彩的 统一性 和 延续性 ,使画面增加美感和阅读效果。 2、 点 、 线 、 面 是组成视觉空间的基本元素,也是版面编排 设计中的主要 视觉 构成语言。 3、版面设计中要依据 媒介形式 、 受众群体 、 诉求重点 等客 观要求,进行统一规划、调度和安排。 4、版面设计中一般都是运用独特新颖、准确适当的方式将视觉元素组织编排起来, 将 图片 、 文字 和 色彩 集合于视觉空间中。 5、点、线、面的组合方式多种多样, 位置 、 方向 和 大小 等 的改变都能让版面呈现出不同的面貌。 6、对于一个版面来说,要做到吸引人的视觉注意力,利用人的 视觉心理 和 视觉生理 吸引人的眼球,实现信息有效的传达,就必须把握视觉流程 规律。 二、简答题(共32分 每小题8分) 1、版面设计中视域的概念是什么? 答: 在版式设计中,存在着最佳的视觉区域。根据人们对阅读习惯的总结经验可知,
文档收集于互联网,已重新整理排版.word版本可编辑.欢迎下载支持. 物象被摆在不同的位置,会使画面置现出不同的视觉印象。明确了画面的主题信息诉求的主次关系,在视域内摆布视觉元素,才能带给观赏者视觉上的舒适感。信息内容超出视域宽度,眼睛必须不停地移动才能延续阅读,如字行过长不仅容易造成阅读的疲乏,更影响阅读速度。 在同一水平线上,左边的事物总是比右边的事物先进人人的视线;视图的上部与下部比较起来,上部给人以轻浮、虚无的感觉,下部则给人以踏实、稳定的感觉。2、版面设计中视觉流程的概念是什么? 答: 视觉流程是指平面上各种不同元素的主次、先后关系,是设计上处理起始点和过程的一种阅读节奏,是人的视觉在接收外界信息时的空间流动程序。版面中存在着大量的信息,人们不能同时接收所有的物象信息,所以要按照一定的流动顺序进行运动,这些信息需要一个最佳的组合与合理的编排。因此,视觉流程设计尤为重要。 版面设计的视觉流程也被称为是一种“空间的运动”,就是视线会随各个视觉元素在空间内沿一定的轨迹运动。这种流动的线条并没有实实在在的出现,而是引导人的视线,依照设计师的意图来获取相关信息的“虚拟的线”。 3、版面设计中什么是版面率?设计时应如何运用? 答: 版面率是指版面上文字与图所占面积与整个版面的面积之比。由于版面率设定不同,版面的效果也会给读者带来不同的印象,所以需要适当处理。在实际应用中,版面率应与整个版面的风格对应起来进行统筹安排。 版面率高即文字与图所占版面的面积较大,内容丰富实用,也比较大众化,版面中留白相对较少。此类型版面安排如果把握不好,极易显得整个版面过于拥挤和无序。版面率低就意味着留白多,图文信息量少,会给人简洁大方、格调高雅的恬静感觉,通常用于感性的版面编排。适中版面率给人随和、自由、清新之感是常用的设计表现手法之一。 4、版面设计中什么是视觉中心?设计时应如何运用? 1文档来源为:从网络收集整理.word版本可编辑.
2014-2015学年第1学期 2012级《软件设计模式》考试试题(开卷) 考试时间:2014年 班级学号姓名 ?本试卷满分100分; ?请将答案写在答题纸上,写明题号,不必抄题,字迹工整、清晰; ?试题中使用C++语言作为描述语言,答题时可以使用C++或Java或C#程序设计语言中 的任意一种作为描述语言,但整个卷面只能使用其中一种,不得混合使用; ?请在答题纸和试题纸上都写上你的班级,学号和姓名,交卷时请将试题纸、答题纸和草纸 一并交上来。 一、单选题(共20分,每题2分) 1.类设计中,“变化是绝对的,稳定是相对的”,下列哪个不属于这句话中“变化”的范畴? (A) 改变函数参数的类型(B) 增加新的数据成员 (C) 改变编程语言(D) 改变对象交互的过程和顺序 2.Open-Close原则的含义是一个软件实体: (A) 应当对扩展开放,对修改关闭 (B) 应当对修改开放,对扩展关闭 (C) 应当对继承开放,对修改关闭 (D) 以上都不对 3.下列关于继承表述错误的是: (A) 继承是一种通过扩展一个已有类的实现,从而获得新功能的复用方法 (B) 泛化类(超类)可以显式地捕获那些公共的属性和方法。特殊类(子类)则通过附加 属性和方法来进行实现的扩展 (C) 破坏了封装性,因为这会将父类的实现细节暴露给子类 (D) 继承本质上是“白盒复用”,对父类的修改,不会影响到子类 4.下列关于对象组合/聚合,说法错误的是: (A) 容器类能通过被包含对象的接口来对其进行访问 (B) 属于黑盒复用,封装性好,因为被包含对象的内部细节对外是不可见 (C) 可以在运行时将被包含对象改变成同类型对象,从而改变容器类的行为效果,但没有 改变容器类的接口 (D) 比继承关系更加灵活,代价是相比继承关系,增强了类间的耦合度 5.用于分离接口和具体实现,使得接口和实现可独立变化的是: (A)适配器模式(B) 桥接模式(C) 命令模式(D)模板方法模式 6.体现“集中管理多个对象间的交互过程和顺序”的是: (A)生成器模式(B) 门面模式(C) 策略模式(D)中介者模式
软件体系结构-设计模式练习题1 1.面向对象分析与设计中的(1)是指一个模块在扩展性方面应该是开放的,而在更改性方面应该是封闭的;而(2)是指子类应当可以替换父类并出现在父类能够出现的任何地方。 (1) A.开闭原则 B.替换原则 C.依赖原则 D.单一职责原则 (2) A.开闭原则 B.替换原则 C.依赖原则 D.单一职责原则 2.(3)限制了创建类的实例数量,而(4)将一个类的接口转换成客户希望的另外一个接口,使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。 (3) A.命令模式(Command)B.适配器模式(Adapter)C.策略模式(Strategy) D.单例模式(Singleton) (4) A.命令模式(Command) B.适配器模式(Adapter) C.策略模式(Strategy) D.单例模式(Singleton) 3. (5)设计模式允许一个对象在其内部状态改变时改变它的行为。下图为这种设计模式的类图,已知类State 为抽象类,则类(6)的实例代表了Context 对象的状态。 (5) A.单件(Singleton) B.桥接(Bridge) C.组合(Composite) D.状态(State) (6) A. Context B. ConcreteStateA C. Handle D. State
4.某公司欲开发一门户网站,将公司的各个分公司及办事处信息进行整合。现决定采用Composite设计模式来实现公司的组织结构关系,并设计了如下图所示的UML类图。图中与Composite模式中的“Component”角色相对应的类是(7) ,与“Composite”角色相对应的类是(8) 。 (7) A. Company B. FinanceDepartment C. HRDepartment D. ConcreteCompany (8) A. Company B. FinanceDepartment C. HRDepartment D. ConcreteCompany 5.某软件公司正在设计一个通用的嵌入式数据处理平台,需要支持多种数据处理芯片之间的数据传递与交换。该平台的核心功能之一要求能够屏蔽芯片之间的数据交互,使其耦合松散,并且可以独立改变芯片之间的交互过程。针对上述需求,采用(9)最为合适。 (9) A. 抽象工厂模式 B. 策略模式 C. 中介者模式D. 状态模式 6.某软件公司正在设计一个图像处理软件,该软件需要支持用户在图像处理中的撤销和重做等动作,为了实现该功能,采用(10)最为合适。 (10) A. 单例模式B. 命令模式 C. 访问者模式 D. 适配器模式 7.某互联网公司正在设计一套网络聊天系统,为了限制用户在使用该系统时发表不恰当言论,需要对聊天内容进行特定敏感词的过滤。针对上述功能需求,采用(11)能够灵活配置敏感 词的过滤过程。 (11) A. 责任链模式 B. 工厂模式 C. 组合模式 D. 装饰模式
1、设计模式一般用来解决什么样的问题( a) A.同一问题的不同表相 B不同问题的同一表相 C.不同问题的不同表相 D.以上都不是 2、下列属于面向对象基本原则的是( c ) A.继承 B.封装 C.里氏代换 D都不是 3、Open-Close原则的含义是一个软件实体( a ) A.应当对扩展开放,对修改关闭. B.应当对修改开放,对扩展关闭 C.应当对继承开放,对修改关闭 D.以上都不对 4、当我们想创建一个具体的对象而又不希望指定具体的类时,可以使用( a )模式。 A.创建型 B.结构型 C行为型 D.以上都可以 5、要依赖于抽象,不要依赖于具体。即针对接口编程,不要针对实现编程,是( d )的表述 A.开-闭原则 B.接口隔离原则 C.里氏代换原则 D.依赖倒转原则 6、依据设计模式思想,程序开发中应优先使用的是( a )关系实现复用。 A, 委派 B.继承 C创建 D.以上都不对 复用方式:继承和组合聚合(组合委派) 7、设计模式的两大主题是( d ) A.系统的维护与开发 B 对象组合与类的继承 C.系统架构与系统开发 D.系统复用与系统扩展 8、单例模式中,两个基本要点( a b )和单子类自己提供单例 A .构造函数私有 B.唯一实例 C.静态工厂方法 D.以上都不对 9、下列模式中,属于行为模式的是( b ) A.工厂模式 B观察者 C适配器以上都是 10、“不要和陌生人说话” 是( d )原则的通俗表述 A.接口隔离 B.里氏代换 C.依赖倒转 D.迪米特:一个对象应对其他对象尽可能少的了解 11、构造者的的退化模式是通过合并( c )角色完成退化的。 A.抽象产品 B产品 C创建者 D使用者 12、单子(单例,单态)模式类图结构如下: 下列论述中,关于”0..1”表述的不正确的是( d ) A.1表示,一个单例类中,最多可以有一个实例. B.”0..1”表示单例类中有不多于一个的实例 C.0表示单例类中可以没有任何实例 D.0表示单例类可以提供其他非自身的实例 13、对象适配器模式是( a )原则的典型应用。 A.合成聚合复用原则 B.里式代换原则 C.依赖倒转原则 D.迪米特法则 14、静态工厂的核心角色是(a) A.抽象产品 B.具体产品 C.静态工厂 D.消费者 15、下列关于静态工厂与工厂方法表述错误的是:( a ) A.两者都满足开闭原则:静态工厂以if else方式创建对象,增加需求的时候会修改源代码 B.静态工厂对具体产品的创建类别和创建时机的判断是混和在一起的,这点在工厂
东北大学继续教育学院 软件设计模式复习题 一:单选题 1.在c#程序中,入口函数的正确声明为:B A. static int main(){…..} B. static void Main(){……} void main(){……} Main(){……} 2.在C#中,表示一个字符串的变量应使用以下哪条语句定义?B A. CString str; B. string str; C. Dim str as string D. char * str; 3.结构化程序设计的3种结构是:D A. 顺序结构、if结构、for结构
B. if结构、if…else结构、else if结构 C. while结构、do…while结构、foreach结构 D. 顺序结构、分支结构、循环结构 4.能正确表示逻辑关系“a>=10 或a<=0”的C#语言表达式是____。D A. a>=10 or a<=0 B. a>=10|a<=0 C. a>=10&&a<=0 D. a>=10||a<=0 5.在类的外部可以被访问的成员是:A A. public成员 B. private成员 C. protected成员 D. protected internal成员 6.在定义类时,如果希望类的某个方法能够在派生类中进一步进行改进,以处理不同的派生类的需要,则应将该方法声明成_________。C A. sealed 方法 B. public 方法 C. visual 方法 D. override 方法 7.关于结构类型,下列说法哪些是正确的?A A. 结构是值类型 B. 结构中不允许定义带参数的实例构造函数; C. 结构中不允许定义析构函数 D. 结构中可以定义成员方法,但是方法内不能使用this 指针 8.下面是几条动态初始化二维数组的语句,指出其中正确的:D A. int arr5[][]=new int[4,5]; B. int[][] arr6 = new int[4, 5]; C. int arr7[,]=new int[4,5]; D. int[,] arr8=new int[4,5]; 9.下面有关析构函数的说法中,不正确的是:D
东大20秋学期《软件设计模式》在线平时作业1 注:本科目是东北大学课程资料,只做参考学习使用!! 一、单选题 (共 10 道试题,共 50 分) 1.分析下列程序: public class class4 { private string _sData = ""; public string sData{set{_sData = value;}} } 在Main 函数中,在成功创建该类的对象obj 后,下列哪些语句是合法的?() A.obj.sData = "It is funny!"; B.Console.WriteLine(obj.sData); C.obj._sData = 100; D.obj.set(obj.sData); 【正确选择是】:A 2.已知结构Resource 的定义如下: struct Resource{ public int Data = 0; } 则下列语句的运行结果为________。 Resource[] list= new Resource[20]; for(int i = 0;i<20;i++){ System.Console.WriteLine(“data={0}”,list[i].Data); } A.打印20 行,每行输出都是 data=0 B.打印20 行,每行输出都是 data=null C.打印20行.第1行输出data=0,第2行输出data=2,.,第20行输出data=19 D.出现运行时异常 【正确选择是】:A 3.已知a、b、c的值分别是4、5、6,执行下面的程序段后,判断变量n的值为:int a,b,c,n; if (c < b) n = a + b + c; else if (a + b < c) n = c - a - b; else n = a + b; A.3 B.-3 C.9 D.15 【正确选择是】:C
武汉工程大学版式设计 专业:班级:学号:姓名: 分)1分,共20一、单项选择题(本大题共20小题,每小题得分在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号 内。错选、多选或未选均无分。 ) ( 1、版面编排设计是 、四维设计、三维设计D B、二维设计C A、一维设计) ( 2、点、线、面是版式设计中的D、非基本元素、非基本样式C、基本元素A、基本样式B) ( 3、可以产生平静、安详感的线是 、折线DB、水平线C、斜线A、直线 ) 线框在版面设计中常起的作用是( 4、D、时尚作用C、装饰作用A、强调作用B、夸张作用) ( 5、曲线视觉流程的形式微妙而复杂,通常可概括为 、五种C、四种DA、二种B、三种 ) 、近年来国内流行的排版趋势是( 6 、重心视觉流程、散构视觉流程DCA、曲线视觉流程B、反复视觉流程 ) ( 7、对比是强调版面元素间的D、统一性C、秩序性A、单纯性B、差异性 ) ( 8、在版面中,为求视觉心理上的静止稳定感,通常会用、对比与和谐、虚实与留白D、节奏与韵律B、对称与均衡CA) ( 9、世界流行的计算字体的标准制度是D、点数制B、磅数制C、级数制A、号数制 ) 10、在版式设计中,行距在常规下的比例为( 、12:14 10:12 D 、6:8 B、8:10 C、A11、文字围绕图形的编排设计是指( ) A图标设计B、文字的互动性C、文字的整体编排D、文字的图形编排 12、文字信息的跳跃率与阅读率( ) A、没有关系B、没有比例C、成反比D、成正比 13、平面设计是以印刷的形式出现,我们通常的颜色模式为( ) A、RGB B、CMYK C、Lad D、HSB 14、就图版率而言,商业性的读物适合( ) A、高图版率 B、中图版率 C、低图版率 D、10%的图版率 15、在用于传达抒情或运动的图版时,应用较多的是( ) A、角版 B、挖版 C、出血版 D、都可以
1.创建型模式的根本意图是把对象的创建和使用分离的责任进行分离,从而降低系统的耦合度 2.软件系统结构是软件设计过程中的一个层次,这一层次超越计算过程中的算法设计和数据结构设计 3.所有设计原则的目标都是为了使软件:降低耦合,增强灵活性。 4.AbstractFactory经常用工厂方法模式解决 5.设计模式中应该优先使用的复用技术是对象组合。 6.设计时应将可变部分封装起来。 7.抽象工厂模式和工厂方法模式之间的联系: 工厂方法模式:一个抽象产品类,可以派生出多个具体产品类。 一个抽象工厂类,可以派生出多个具体工厂类。 每个具体工厂类只能创建一个具体产品类的实例。 抽象工厂模式:多个抽象产品类,每个抽象产品类可以派生出多个具体产品类。 一个抽象工厂类,可以派生出多个具体工厂类。 每个具体工厂类可以创建多个具体产品类的实例。 区别:工厂方法模式只有一个抽象产品类,而抽象工厂模式有多个。 工厂方法模式的具体工厂类只能创建一个具体产品类的实例,而抽象工厂模式可以创建多个。 8.使用继承处理对象间的关系的模式:工厂方法、适配器、模板方法、解释器模式 9.迭代器设计模式根据谁控制迭代可以分为外部迭代器和内部迭代器 10.创建型设计模式抽象了实例化过程,一个类创建型模式使用继承改变被实例化的类,而一个对象创建型模式将实例化委托给另一个对象。 11.可复用的面向对象设计的两大原则:针对接口编程、优先使用对象复合 12.使用单件模式所需要注意:1.多线程问题2.资源释放问题 13.设计模式一般用来解决同一问题不同表象的问题 14.在涉及模式中,效果是指原因和结果。 15.设计模式的两大主题是系统复用和系统扩展 16.适配器模式最常见的用法是保持多态,适配器模式让我们在设计时不需要担心接口问题 17.静态工厂的核心角色是抽象产品。 18.Abstract Factory类和具体工厂方法可以分离,每个具体工厂负责一个抽象工厂方法的实现 19.抽象工厂类通过为每个不同类型的对象定义一个方法,来指定实例化哪一个对象 20.抽象工厂定义接口,具体工厂实现某一接口 21.Abstract Factory将如何执行对象实例化规则从这些对象的客户对象提取出来 22.Abstract Factory的三个关键策略:发现并封装可变点;优先使用对象组合;针对接口设计,而不是针对实现设计 23.面向对象系统中功能复用的两种最常用技术是对象组合和类继承。 24.每个Drector对象都对其后的对象封装自己的新功能 25.装饰链始于一个component对象,终于concretecomponent对象 26.