设计模式之九--门面模式(外观模式)

本文介绍了门面模式的概念及其应用场景,探讨了如何通过该模式简化子系统接口,使其更易于使用。并通过动物园管理的例子来说明门面模式如何实现接口隔离及降低系统间的耦合度。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

定义:
要求一个子系统的外部与其内部的通信必须通过一个统一的对象进行。门面模式提供一个高层次的接口,使得子系统更易于使用

目标:
接口隔离和迪米特法则

业务场景举例:

动物园很大,最初有一个管理园,称为园长。园长有很多事情,其中一个是给动物打针,那园长就要逐一给所有动物打针。

后来园长觉得这样不行,所以给动物园划分了不同的区域,每个区域分配一个管理员(门面),园长不再需要逐一给动物打针,只需要通知相应的管理园即可

迪米特法则,原话是一个类只与自己的朋友通信和调用。与此同时,还有一个隐藏原则:朋友越少越好,这样可以降低系统复杂度,提升可维护性

感想:门面模式,体现的更多的是分治原则,把大的模块和系统细分为更细的模块、部门。而模块内的对象,通过统一的包装类(门面类)操作内部对象或调用相应逻辑。

打断:sping中常用的拦截器过滤器,是否属于这个范畴?
BTW:拦截器与过滤器的区别?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值