请根据下面叙述的场景选用适当的设计模式。若某面向对象系统中的某些类有且只有一个实例,那么采用(请作答此空)设计模式能够有效达到该目的:该系统中的某子模块需要为其他模块提供访问不同数据库系统(如Oracle、SQL Server和DB2 UDB等)的功能,这些数据库系统提供的访问接口有一定的差异,但访问过程却都是相同的,例如,先连接数据库、再打开数据库、最后对数据进行查询,( )设计模式可抽象出相同的数据库访问过程;系统中的文本显示类(TextView)和图片显示类(Picture View)都继承了组件类(Component),分别显示文本和图片内容,现需要构造带有滚动条、或者带有黑色边框、或者既有滚动条又有黑色边框的文本显示控件和图片显示控件,但希望最多只增加三个类,( )计模式可以实现该目的。A.外观B.装饰C.单件D.模板方法
请根据下面叙述的场景选用适当的设计模式。若某面向对象系统中的某些类有且只有一个实例,那么采用(请作答此空)设计模式能够有效达到该目的:该系统中的某子模块需要为其他模块提供访问不同数据库系统(如Oracle、SQL Server和DB2 UDB等)的功能,这些数据库系统提供的访问接口有一定的差异,但访问过程却都是相同的,例如,先连接数据库、再打开数据库、最后对数据进行查询,( )设计模式可抽象出相同的数据库访问过程;系统中的文本显示类(TextView)和图片显示类(Picture View)都继承了组件类(Component),分别显示文本和图片内容,现需要构造带有滚动条、或者带有黑色边框、或者既有滚动条又有黑色边框的文本显示控件和图片显示控件,但希望最多只增加三个类,( )计模式可以实现该目的。
A.外观
B.装饰
C.单件
D.模板方法
B.装饰
C.单件
D.模板方法
参考解析
解析:本题考查设计模式的基本应用。
面向对象系统中的某些类有且只有一个实例,该场景的描述与单件模式的定义相同。系统中的某子模块需要为其他模块提供访问不同数据库系统(如Oracle、SQL Server和DB2 UDB等),的功能,这些数据库系统提供的访问接口有一定的差异,但访问过程却都是相同的,例如,先连接数据库,再打开数据库,最后对数据进行查询,该场景描述了对数据库进行操作的步骤是相同的。但是,具体的每个步骤根据不同的数据库系统会存在一定差异,例如数据库提供的接口函数不同,模板方法正是将步骤过程抽象出来,而每个具体操作步骤的差异留到具体的子类去实现。系统中的文本显示类(TextView)和图片显示类(Picture View)都继承了组件类(Component),分别显示文本和图片内容,现需要构造带有滚动条、或者带有黑色边框、或者既有滚动条又有黑色边框的文本显示控件和图片显示控件,但希望最多只增加三个类,该场景限定了能够增加的类的数量。可以通过新增加三个类,分别继承组件类并实现给组件增加黑色边框、滚动条以及增加黑色边框和滚动条功能,因为文本显示类和图片显示类都属于组件类,因此,新增加的三个类能够给文本显示对象和图片显示对象增加额外的显示功能,该实现手段采用的就是装饰模式。
面向对象系统中的某些类有且只有一个实例,该场景的描述与单件模式的定义相同。系统中的某子模块需要为其他模块提供访问不同数据库系统(如Oracle、SQL Server和DB2 UDB等),的功能,这些数据库系统提供的访问接口有一定的差异,但访问过程却都是相同的,例如,先连接数据库,再打开数据库,最后对数据进行查询,该场景描述了对数据库进行操作的步骤是相同的。但是,具体的每个步骤根据不同的数据库系统会存在一定差异,例如数据库提供的接口函数不同,模板方法正是将步骤过程抽象出来,而每个具体操作步骤的差异留到具体的子类去实现。系统中的文本显示类(TextView)和图片显示类(Picture View)都继承了组件类(Component),分别显示文本和图片内容,现需要构造带有滚动条、或者带有黑色边框、或者既有滚动条又有黑色边框的文本显示控件和图片显示控件,但希望最多只增加三个类,该场景限定了能够增加的类的数量。可以通过新增加三个类,分别继承组件类并实现给组件增加黑色边框、滚动条以及增加黑色边框和滚动条功能,因为文本显示类和图片显示类都属于组件类,因此,新增加的三个类能够给文本显示对象和图片显示对象增加额外的显示功能,该实现手段采用的就是装饰模式。
相关考题:
(45)下列关于 Oracle 数据库系统的叙述中,哪一个是不正确的?A)一个 Oracle 数据库系统主要由 Oracle 服务器和工具组成B)Oracle 服务器支持 SQL 语言C)Oracle 实例指的是数据库存储数据的集合D)Oracle 数据库系统能支持对象一关系数据模型
若系统中的某子模块需要为其他模块提供访问不同数据库系统的功能,这些数据库系统提供的访问接口有一定的差异,但访问过程却都是相同的,例如,先连接数据库,再打开数据库,最后对数据进行查询。针对上述需求,可以采用( )设计模式抽象出相同的数据库访问过程,该设计模式( )。A.外观 B.装饰 C.桥接 D.享元 A.可以动态、透明地给单个对象添加职责 B.为子系统定义了一个高层接口,这个接口使得这一子系统更加容易使用 C.通过运用共享技术,有效支持大量细粒度的对象 D.将抽象部分与它的实现部分分离,使它们都可以独立地变化
下列关于Oracle数据库系统的叙述中,( )是不正确的。A)一个Oracle数据库系统主要由Oracle服务器和工具组成B)Oracle数据库系统能支持对象一关系数据模型C)Oracle实例指的是数据库存储数据的集合D)Oracle服务器支持SQL语言
若某面向对象系统中的某子模块需要为其他模块提供访问不同数据库系统(Oracle、SQLServer、DB2 UDB等)的功能,这些数据库系统提供的访问接口有一定的差异,但访问过程却都是相同的,例如,先连接数据库,再打开数据库,最后对数据进行查询。(50)设计模式可抽象出相同的数据库访问过程。A.外观(Facade)B.装饰(Decorate)C.单例(Singleton)D.模板方法(Template Method)
● 下面给出了四种设计模式的作用: 外观(Fa?ade) :为子系统中的一组功能调用提供一个一致的接口,这个接口使得这一子系统更加容易使用; 装饰(Decorate):当不能采用生成子类的方法进行扩充时,动态地给一个对象添加一些额外的功能; 单件(Singleton) :保证一个类仅有一个实例,并提供一个访问它的全局访问点; 模板方法(Template Method) :在方法中定义算法的框架,而将算法中的一些操作步骤延迟到子类中实现。 请根据下面叙述的场景选用适当的设计模式。若某面向对象系统中的某些类有且只有一个实例,那么采用(30) 设计模式能够有效达到该目的;该系统中的某子模块需要为其他模块提供访问不同数据库系统(Oracle、SQL Server、DB2 UDB 等)的功能,这些数据库系统提供的访问接口有一定的差异,但访问过程却都是相同的,例如,先连接数据库、再打开数据库、最后对数据进行查询,(31) 设计模式可抽象出相同的数据库访问过程;系统中的文本显示类(TextView)和图片显示类(PictureView)都继承了组件类(Component),分别显示文本和图片内容,现需要构造带有滚动条、或者带有黑色边框、或者既有滚动条又有黑色边框的文本显示控件和图片显示控件,但希望最多只增加三个类,(32) 设计模式可以实现该目的。(30)A. 外观 B. 装饰 C. 单件 D. 模板方法(31)A. 外观 B. 装饰 C. 单件 D. 模板方法(32)A. 外观 B. 装饰 C. 单件 D. 模板方法
请根据下面叙述的场景选用适当的设计模式。若某面向对象系统中的某些类有且只有一个实例,那么采用(42)设计模式能够有效达到该目的;该系统中的某子模块需要为其他模块提供访问不同数据库系统(Oracle、SQLServer、DB2UDB等)的功能,这些数据库系统提供的访问接口有一定的差异,但访问过程却都是相同的,例如,先连接数据库,再打开数据库,最后对数据进行查询,(43)设计模式可抽象出相同的数据库访问过程;系统中的文本显示类(TextView)和图片显示类(PictureView)都继承了组件类(Component),分别显示文本和图片内容,现需要构造带有滚动条、或者带有黑色边框、或者既有滚动条又有黑色边框的文本显示控件和图片显示控件,但希望最多只增加三个类,(44)设计模式可以实现该目的。A.外观B.装饰C.单件D.模板方法
下面对Oracle数据库系统的叙述中,哪种是不正确的? ( )A.Oracle数据库由三种大型的文件组成:数据文件,日志文件和控制文件B.Oracle系统中的进程分为Oracle进程和用户进程C.Oracle数据库打开步骤为:启动实例,装配数据库,打开数据库:数据库的关闭步骤为:关闭数据库,卸下数据库,关闭实例D.OracleDesigner/2000是一个CASE工具,能帮助用户对复杂系统进行建模、分析和设计
● 下面给出了四种设计模式的作用:外观(Facade):为子系统中的一组功能调用提供一个一致的接口,这个接口使得这一子系统更加容易使用装饰(Decorate):当不能采用生成子类的方法进行扩充时,动态地给一个对象添加一些额外的功能;单件(Singleton) :保证一个类仅有一个实例,并提供一个访问它的全局访问点;模板方法(Template Method):在方法中定义算法的框架,而将算法中的一些操作步骤延迟到子类中现。请根据下面叙述的场景选用适当的设计模式。若某面向对象系统中的某些类有且只有一个实例,那么采用(42)设计模式能够有效达到该目的;该系统中的某子模块需要为其它模块提供访问不同数据库系统(Oracle、SQL Server、DB2 UDB 等)的功能,这些数据库系统提供的访问接口有一定的差异,但访问过程却都是相同的,例如,先连接数据库,再打开数据库,最后对数据进行查询,(43) 设计模式可抽象出相同的数据库访问过程;系统中的文本显示类(TextView)和图片显示类(PictureView)都继承了组件类(Component),分别显示文本和图片内容,现需要构造带有滚动条、或者带有黑色边框、或者既有滚动条又有黑色边框的文本显示控件和图片显示控件,但希望最多只增加三个类,(44)设计模式可以实现该目的。(42)A. 外观 B. 装饰 C. 单件 D. 模板方法(43)A. 外观 B. 装饰 C. 单件 D. 模板方法(44)A. 外观 B. 装饰 C. 单件 D. 模板方法
数据库的产品很多,尽管它们支持的数据模型不同,使用不同的数据库语言,而且数据 的在储结构也各不相同,但体系统构基本上都具有相同的特征,采用“三级模式和两级映像”,如下图所示,图中①,②,③分别代表数据库系统中( ),图中④, ⑤,⑥分别代表数据库系统中(请作答此空)。A.外模式/内模式映射、外模式内模式映射、概念模式内模式映射B.外模式概念模式映射、外模式/概念模式映射、概念模式/内模式映射C.概念模式/内模式映射、概念模式/内模式映射、外模式内模式映射D.外模式/内模式映射、外模式内模式映射、概念模式/外模式映射
创建型设计模式抽象了实例化过程,它分为面向类和面向对象两种。其中,( )模式是保证一个类仅有一个实例,并提供一个访问它的全局访问点。A.工厂(Factory)B.构建器(Builder)C.原型(Prototype)D.单例(Singleton)
请根据下面叙述的场景选用适当的设计模式。若某面向对象系统中的某些类有且只有一个实例,那么采用( )设计模式能够有效达到该目的:该系统中的某子模块需要为其他模块捉供访问不同数据库系统(如Oracle、SQL Server和DB2 UDB等)的功能,这些数据库系统提供的访问接口有一定的差异,但访问过程却都是相同的,例如,先连接数据库、再打开数据库、最后对数据进行查询,( )设计模式可抽象出相同的数据库访问过程;系统中的文本显示类(TextView)和图片显示类(Picture View)都继承了组件类(Component),分别显示文本和图片内容,现需要构造带有滚动条、或者带有黑色边框、或者既有滚动条又有黑色边框的文本显示控件和图片显示控件,但希望最多只增加三个类,(请作答此空)设计模式可以实现该目的。A.外观B.装饰C.单件D.模板方法
下图是( )设计模式的类图,该设计模式的目的是(请作答此空),图中,Abstraction和RefinedAbstraciton之间是( )关系,Abstraction和Implementor之间是( )关系。A.将一个类的接口转换为客户期望的另一种接口,使得原本不匹配的接口而无法合作的类可以一起工作B.将一个抽象与其实现分离开,以便两者能够各自独立地演变C.动态地给一个对象附加额外的职责,不必通过子类就能灵活地增加功能D.为一个对象提供代理以控制该对象的访问
下面的UML类图描绘的是( )设计模式。关于该设计模式的叙述中,错误的是(请作答此空)。A.该设计模式中的Observer需要维护至少一个Subject对象B.该设计模式中的ConcreteObserver可以绕过Subject及其子类的封装C.该设计模式中一个Subject对象需要维护多个Observer对象D.该设计模式中Subject需要通知Observer对象其自身的状态变化
若系统中的某子模块需要为其他模块提供访问不同数据库系统的功能,这些数据库系统提供的访问接口有一定的差异,但访问过程却都是相同的,例如,先连接数据库,再打开数据库,最后对数据进行查询。针对上述需求,可以采用(请作答此空)设计模式抽象出相同的数据库访问过程,该设计模式( )。A.外观B.装饰C.桥接D.享元
下图是( )设计模式的类图,该设计模式的目的是(请作答此空),图中,Decorator和Component之间是( )关系,ConcreteDecorator和Decorator之间是( )关系。A.将一个类的接口转换为客户期望的另一种接口,使得原本因接口不匹配而无法合作的类可以一起工作B.将一个抽象与其实现分离开,以便两者能够各自独立地演变C.为一个对象提供代理以控制该对象的访问D.动态地给一个对象附加额外的职责,不必通过子类就能灵活地增加功能
请根据下面叙述的场景选用适当的设计模式。若某面向对象系统中的某些类有且只有一个实例,那么采用( )设计模式能够有效达到该目的:该系统中的某子模块需要为其他模块捉供访问不同数据库系统(如Oracle、SQL Server和DB2 UDB等)的功能,这些数据库系统提供的访问接口有一定的差异,但访问过程却都是相同的,例如,先连接数据库、再打开数据库、最后对数据进行查询,(请作答此空)设计模式可抽象出相同的数据库访问过程;系统中的文本显示类(TextView)和图片显示类(Picture View)都继承了组件类(Component),分别显示文本和图片内容,现需要构造带有滚动条、或者带有黑色边框、或者既有滚动条又有黑色边框的文本显示控件和图片显示控件,但希望最多只增加三个类,( )计模式可以实现该目的。A.外观B.装饰C.单件D.模板方法
若系统中的某子模块需要为其他模块提供访问不同数据库系统的功能,这些数据库系统提供的访问接口有一定的差异,但访问过程却都是相同的,例如,先连接数据库,再打开数据库,最后对数据进行查询。针对上述需求,可以采用( )设计模式抽象出相同的数据库访问过程,该设计模式(请作答此空)。A.可以动态、透明地给单个对象添加职责B.为子系统定义了一个高层接口,这个接口使得这一子系统更加容易使用C.通过运用共享技术,有效支持大量细粒度的对象D.将抽象部分与它的实现部分分离,使它们都可以独立地变化
按照设计模式的目的进行划分,现有的设计模式可以分为三类。其中创建型模式通过采用抽象类所定义的接口,封装了系统中对象如何创建、组合等信息,其代表有(请作答此空 )模式等;( )模式主要用于如何组合己有的类和对象以获得更大的结构,其代表有 Adapter 模式等;( )模式主要用于对象之间的职责及其提供服务的分配方式,其代表有( )模式等。 A. DecoratorB. Fly weightC. CommandD.Singleton
试题四 (共 2S 分)阅读以下关于数据库设计的叙述,在答题纸上回答问题 1 至问题 3。【说明】某制造企业为拓展网上销售业务,委托某软件企业开发一套电子商务网站。初期仅解决基本的网上销售、订单等功能需求。该软件企业很快决定基于.NET 平台和 SQL Server 数据库进行开发,但在数据库访问方式上出现了争议。王工认为应该采用程序在线访问的方式访问数据库:而李工认为本企业内部程序员缺乏数据库开发经验,而且应用筒单,应该采用 ORM方式。最终经过综合考虑,该软件企业采用了李工的建议。随着业务的发展,该电子商务网站逐渐发展成一个通用的电子商务平台,销售多家制造企业的产品,电子商务平台的功能也日益复杂。目前急需对该电子商务网站进行改造,以支持对多种异构数据库平台的数据访问,同时满足复杂的数据管理需求。该软件企业针对上述需求,对电子商务网站的架构进行了重新设计,新增加了数据访问层,同时采用工厂设计模式解决异构数据库访问的问题。新设计的系统架构如图 4-1 所示。【问题 1】 (9 分)请用 300 字以内的文字分别说明数据库程序在线访问方式和 ORM 方式的优缺点,说明该软件企业采用 ORM 的原因。【问题 2】 (9 分)请用 100 宇以内的文字说明新体系架构中增加数据访问层的原因。请根据图 4-1 所示,填写图中空白处(1) - (3)。【问题 3】 (7 分) -应用程序设计中,数据库访问需要良好的封装性和可维护性,因此经常使用工厂设计模式来实现对数据库访问的封装。请解释工厂设计模式,并说明其优点和应用场景: 请解释说明工厂模式在数据访问层中的应用。请用 100 宇以内的文字说明新体系架构中增加数据访问层的原因。请根据图 4-1 所示,填写图中空白处(1) - (3)。
按照设计模式的目的进行划分,现有的设计模式可以分为三类。其中创建型模式通过采用抽象类所定义的接口,封装了系统中对象如何创建、组合等信息,其代表有( )模式等;( )模式主要用于如何组合己有的类和对象以获得更大的结构,其代表有 Adapter 模式等;(请作答此空 )模式主要用于对象之间的职责及其提供服务的分配方式,其代表有( )模式等。A. 行为型B. 交互型C. 耦合性D. 关联型
下列关于Oracle数据库系统的叙述中,哪一个是不正确的?()A、一个Oracle数据库系统主要由Oracle服务器和工具组成B、Oracle服务器支持SQL语言C、Oracle实例指的是数据库存储数据的集合D、Oracle数据库系统能支持对象—关系数据模型
下列关于SQL Server 2000安全性的指述正确的是()A、SQL Server 2000的安全性分为两个级别:实例级和数据库级B、SQL Server 2000的安全性分为三个级别:实例级.数据库级和数据库对象级C、—个帐号能访问数据库,就一定可以访问该数据库中的所有对象D、—个账号能访问实例,就一定也能访问这个实例下面的数据库
单选题若系统中的某子模块需要为其它模块提供访问不同数据库系统(Oracle、SQLServer、DB2UDB等)的功能,这些数据库系统提供的访问接口有一定的差异,但访问过程却都是相同的,例如,先连接数据库,再打开数据库,最后对数据进行查询,()设计模式可抽象出相同的数据库访问过程。A外观B装饰C单件D模板方法