外观模式(Façade)

1 概述
当你开发系统时,遇到这样的问题:
1>分层开发时,底层的多个类相互协作完成一些复杂的功能,高层的开发人员也必须要知道这些底层类是如何协作完成功能,这样做合理吗
2>在开发系统时,需要用到已有的旧系统中的功能,面对那些杂乱无章的代码、逻辑我们怎么办,难道要每一位开发人员都去面对吗

当遇到这些问题,在面向对象的世界里,我们是如何解决——外观模式
2 GOF
意图
为子系统中的一组接口提供一个一致的界面,Facade模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。[GOF 《设计模式》]


结构图

3 理解
SubSystem:复杂的子系统,其中的类关系复杂,类比较多;
Client:高层客户代码
Façade:聚合子系统中的类

这样,原来客户代码是直接与子系统交互,现在它们之间的交互都控制在了Façade类,解耦了高层代码与低层代码。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值