从开源框架理解设计模式系列#Facade外观模式

外观模式(Facade),又称为门面模式,为子系统提供一个统一的接口,使得子系统更加易于使用。文章讨论了为何需要外观模式,如何实现它,并通过支付宝开放API和Velocity中的VelocityEngine两个案例来展示其实际应用。同时,介绍了外观模式在系统解耦、简化使用和构建层次架构中的优点,以及可能带来的扩展性问题。
摘要由CSDN通过智能技术生成

目录

what什么是外观模式

why为什么需要外观模式

How如何实现外观模式

开源框架经典案例

支付宝开放API

Velocity中的VelocityEngine

使用场景

优缺点对比

优点

缺点

参考资料


what什么是外观模式

        Gof定义:为子系统中的一组接口提供一个一致的界面,外观模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。

        HeadFirst定义:提供了一个统一的接口,用来访问子系统中的一群接口,外观定义了一个接口, 让子系统更容易使用。

        外观模式又称为门面模式,典型的对象结构性模式。

        尊贵的符号外表下,隐藏着卑劣的梦想——Mason Cooley。

why为什么需要外观模式

        将一个系统划分为若干个子系统有利于降低系统的复杂性,一个常见的设计目标是使得子系统间的通信和相互依赖关系最小。这样达到该目标的途径之一就是引入一个外观对象,它为子系统中一般的设备提供了一个单一而简单的界面。

        现在系统大多从单体应用往微服务应用转换,以前的单体应用可能一个应用连多个库,而按职责和领域的概念拆分後,假设从一个A应用拆分爲B、C、D三个应用,B不可能去感知每个应用的功能、逻辑,否则就失去了拆分的意义。B如果要C和D的数据,常规方法是让C和D提供Facade方法,现在微服务架构体系下一般是RPC调用。

        

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值