博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
外观设计模式(门面模式)
阅读量:6305 次
发布时间:2019-06-22

本文共 422 字,大约阅读时间需要 1 分钟。

hot3.png

1、门面模式举例,医院设置一个接待员的位置:

  • 病人只接触接待员,由接待员与各个部门打交道

33ebf328dab5d82e4fca2188b10ac2beaea.jpg

2、门面模式的结构

  • 门面角色会将所有从客户端发来的请求委派到相应的子系统去

9cc7d0265293f3381ca5eaf35627c933eb0.jpg

  • 使用门面模式还有一个附带的好处,就是能够有选择性地暴露方法
  • 一个模块中定义的方法可以分成两部分,一部分是给子系统外部使用的,一部分是子系统内部模块之间相互调用时使用的
  • 有了Facade类,那么用于子系统内部模块之间相互调用的方法就不用暴露给子系统外部了

3、门面模式的优点

  • 松散耦合:松散了客户端与子系统的耦合关系,让子系统内部的模块能更容易扩展和维护
  • 简单易用:客户端不再需要了解子系统内部的实现,只需要跟门面类交互就可以了
  • 更好的划分访问层次:有些方法是对系统外的,有些方法是系统内部使用的
    • 把需要暴露给外部的功能集中到门面中,这样既方便客户端使用,也很好地隐藏了内部的细节

转载于:https://my.oschina.net/u/3847203/blog/1836568

你可能感兴趣的文章
TreeSet的用法
查看>>
防HTTP慢速攻击的nginx安全配置
查看>>
深入理解PHP内核(十四)类的成员变量及方法
查看>>
Spring Boot2.0+中,自定义配置类扩展springMVC的功能
查看>>
参与博客编辑器改版,我的礼物 感谢51cto
查看>>
JavaWeb笔记——JSTL标签
查看>>
Eclipse插件大全 挑选最牛的TOP30
查看>>
一些实用性的总结与纠正
查看>>
Kubernetes概念
查看>>
逻辑卷管理器(LVM)
查看>>
一个小代码,欢迎大佬的意见,求指正
查看>>
搭建LAMP架构
查看>>
神经网络注意力机制--Attention in Neural Networks
查看>>
Spring.Net+WCF实现分布式事务
查看>>
在Linux上高效开发的7个建议
查看>>
java数据结构 - 数组使用的代码
查看>>
个人简历-项目经验
查看>>
swoole异步任务task处理慢请求简单实例
查看>>
DHCP
查看>>
oracle数据泵导入分区表统计信息报错(四)
查看>>