问答题阅读以下关于设计模式应用的叙述,根据要求回答问题。
[说明]
某软件公司承接了一项面向儿童的模拟游戏软件的开发任务,该游戏软件主要模拟现实世界中各种鸭子的发声特征、飞行特征和外观特征。游戏软件需要模拟的鸭子种类及其特征如表2—13所示
表2—13鸭子种类及其特征
鸭子种类 发声特征 飞行特征 外观特征
灰鸭(MallardDuck) 发出“嘎嘎”声(Quack) 用翅膀飞行(FlyWithWings) 灰色羽毛
红头鸭(RedHeadDuck) 发出“嘎嘎”声(Quack) 用翅膀飞行(FlyWithWings) 灰色羽毛、头部红色
棉花鸭(CottonDuck) 不发声(QuackNoWay) 不能飞行(FlyNoWay) 白色
橡皮鸭(RubberDuck) 发出橡皮与空气摩擦的声音(Squeak) 不能飞行(FlyNoWay) 黑白橡皮颜色
为支持将来能够模拟更多种类鸭子的特征,该公司架构师采用某种设计模式设计的类图如图2-9所示。在图2—9中,类Duck描述了抽象的鸭子,方法fly()、quack()和display()分别表示不同种类的鸭子都具有飞行特征、发声特征和外观特征;类FlyBehavior与QuackBehavior分别用于表示抽象的飞行行为与发声行为。


[问题1]
请用350字以内的文字指出该公司架构师所采用的设计模式的具体名称、设计意图及其优缺点。

延伸阅读

你可能感兴趣的试题

参考答案:统一建模语言(UML)是面向对象的建模语言,强调两个重要的概念:鼓励将设计描述为许多交互的对象,而不是一些大的单块代码;...
2.问答题阅读以下软件架构设计的叙述,根据要求回答问题。
[说明]
某大型电子商务企业的主要业务之一是网上书城,其主要功能是通过Internet为用户提供各种图书信息的在线查询、浏览及订购相关图书等多种服务。PH软件公司承接了该大型网上书城系统的升级改造开发任务。该软件公司的领域专家对需求进行深入分析后,得到的部分系统需求如下。
(1)用户可能频繁地进行书目查询操作,网上书城需要返回众多符合条件的书目并且分页显示,而且可能每次查询的内容都不一样。
(2)网站管理员需要批量对相关书目信息进行修改,并且将更新信息记录到数据库。
(3)随着该网上书城知名度的不断提升,每天的业务量非常多,网站的用户访问量越来越大,因此对业务有持续性要求,且要求有限的资源更加合理地规划和使用。
(4)随着该企业业务规模的不断扩展,网上书城并购了多家其他同类的网上书城,需要将后台异构数据库系统进行整合。
该软件公司的系统架构师经过多方的研究和论证,集体提出了采用层次式架构风格设计该大型网上书城系统,包括表现层、业务逻辑层和数据访问层。
[问题1]
数据访问层负责与应用中的各种数据源打交道,并将它们整合起来,为业务逻辑层提供统一的数据服务。请对该大型网上书城的4个需求进行分析,结合你的系统架构经验,将表2—12中每个需求适合选用的数据访问模式及选择理由填充完整。
表2-12网上书城数据访问层设计
系统需求 数据访问模式 选择理由
(1) (2)
(3) (4)
(5) (6)
专用产品(如WebSphere Information Integration等) (7)
参考答案:在层次式架构风格中,数据访问层(数据持久层)主要负责和应用中的各种数据源(如DB2、Oracle等关系型数据源、XML数...
参考答案:可用性是指网络或网络设备(如服务器等)可用于执行预期任务时间所占总量的百分比。依题意,试题中只要求计算图2—8数据交换区...