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

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

外观设计模式比较简单,我们平时就会用的比较多。

本质就是为了上层更加方便的使用某个系统,提供一个中间的、总结性的、相对较统一的中间层。使得系统更加易用(上层只需要使用中间层调用系统的功能就好)。

为啥叫外观模式:外观是指低一层(或者被调用层)系统的抽象出来的,对外的接口。外界其实只是使用这个接口就可以使用整个系统,也就是外界只看得到中间这层,中间层表达了被使用系统的外观。

 

外观模式中最重要的角色:中间层(中介、接口)

 

使用场景:

  • 豆浆机
  • 买房子中介
  • 我们常用的XXXTools、XXXService、XXXAssist、XXXUtils类
  • api
  • 两个模块之间的交互(抽象出来一些接口)

优点:

  • 减少系统相互依赖(解耦调用者、被调用者)。
  • 提高了安全性(对外只暴露了中介)
  • 调用方便

缺点:

修改比较麻烦,更改系统功能后,中介也可能要修改。不符合开闭原则(一般只能靠修改完成需求,不做扩展)。知道最少原则程度较高

 

和其他模式的关系:

 

有时中介会使用单例模式。

 

转载于:https://www.cnblogs.com/zhang-chi/p/5748617.html

你可能感兴趣的文章
【原创】用MySQL 生成随机密码-增加大写处理
查看>>
读源码Apache-commons-lang3-3.1(三)
查看>>
C#复制、粘贴文本信息到剪贴板
查看>>
单IP无TMG拓扑Lync Server 2013:边缘服务器
查看>>
WebService大讲堂之Axis2(8):异步调用WebService
查看>>
FlashBuilder(FB/eclipse) 打开多个无效
查看>>
广播的接收与处理
查看>>
理解Kubernetes(2): 应用的各种访问方式
查看>>
由浅入深CIL系列【目录索引】+ PostSharp AOP编程【目录索引】
查看>>
js禁止用户右键等操作
查看>>
oracle表空间压缩
查看>>
Apache Spark Jobs 性能调优
查看>>
C# HashTable的用法总结
查看>>
如何在本机搭建SVN服务器【转】
查看>>
Oracle开发常用函数与存储过程
查看>>
修改PHP上传文件大小限制的方法
查看>>
OLAP与OLTP介绍
查看>>
Mac 安装md5sum等
查看>>
memcached client --ref
查看>>
MyBatis魔法堂:ResultMap详解
查看>>