查看更多
当前 - 选择题 - 设计模式
中等
单选题
2014年11月第33题
#了解即可
#超纲

某公司欲开发一个用于分布式登录的服务端程序,使用面向连接的 TCP 协议并发地处理多客户端登录请求。用户要求该服务端程序运行在Linux、Solaris和Windows NT等多种操作系统平台之上,而不同的操作系统的相关 API 函数和数据都有所不同。针对这种情况,公司的架构师决定采用"包装器外观(Wrapper Facade)"架构模式解决操作系统的差异问题。具体来说,服务端程序应该在包装器外观的实例上调用需要的方法,然后将请求和请求的参数发送给 (问题1) ,调用成功后将结果返回。使用该模式 (问题2)

正确答案
B

本题考察的是包装器外观(Wrapper Facade)架构模式的概念与作用。
包装器外观模式通过为底层复杂或多变的 API 提供统一封装,使上层应用代码在不同平台之间实现一致调用,从而提高可移植性与可维护性。
问题1
A选项 客户端程序:是服务端的交互对象,不是包装器外观的底层调用目标,错误。
B选项 操作系统 API 函数:包装器外观的主要作用是屏蔽不同操作系统 API 的差异,服务端程序通过它间接调用 OS API,正确。
C选项 TCP 协议 API 函数:TCP 是网络通信协议的一部分,但题干强调跨操作系统 API 封装,不是直接调用 TCP API,错误。
D选项 登录连接程序:只是业务逻辑的一部分,不是底层 API 调用目标,错误。
因此,选择选项B。

问题2
A选项 提高了一致性但降低性能:通过统一封装,调用接口一致性和可移植性提高,但增加了调用层次,性能略有下降,正确。
B选项 降低灵活性但提高性能:包装器外观主要增加抽象层,性能不会提升,错误。
C选项 降低可移植性:封装正是为了提高可移植性,这个选项错误。
D选项 提高复用性但降低可配置性:包装器外观不直接降低系统可配置性,这个描述不准确,错误。
因此,选择选项A。

联系我们
隐私协议
用户协议
微信公众号
知乎
小红书
浙ICP备2021029036号
@2022-2026
嘉兴市安芯网络科技有限公司 版权所有