阅读下列说明和图,回答问题1至问题3,将解答填入答题纸的对应栏内。
【说明】
某运输公司决定为新的售票机开发车票销售的控制软件。图3-1给出了售票机的面板示意图以及相关的控制部件。售票机相关部件的作用如下所述:
(1)目的地键盘用来输入行程目的地的代码(例如,200表示总站)。
(2)乘客可以通过车票键盘选择车票种类(单程票、多次往返票和座席种类)。
(3)继续/取消键盘上的取消按钮用于取消购票过程,继续按钮允许乘客连续购买多张票。
(4)显示屏显示所有的系统输出和用户提示信息。
(5)插卡口接受MCard(现金卡),硬币口和纸币槽接受现金。
(6)打印机用于输出车票。
假设乘客总是支付恰好需要的金额而无需找零,售票机的维护工作(取回现金、放入空白车票等)由服务技术人员完成。
系统采用面向对象方法开发,使用UML进行建模。系统的顶层用例图和类图分别如图3-2和图3-3所示。
【问题3】(3分) 图3-3中的类图设计采用了中介者(Mediator)设计模式,请说明该模式的内涵。
参考答案:
使用Mediator 模式,可以使各个对象间的耦合松散,只需关心和Mediator 的关系,使多对多的关系变成了一对多的关系,可以降低系统的复杂性,提高可修改扩展性。
解析:
本问题考查设计模式。设计模式题目虽然比较难,但是本题题目中已经给出了所采用的设计模式为Mediator模式,只需说明设计模式的内涵即可,也比较容 易。使用Mediator模式,可以使各个对象间的耦合松散,只需关心和Mediator的关系,使多对多的关系变成了一对多的关系,可以降低系统的复杂 性,提高可修改扩展性。