常说的设计模式是23种设计模式,分为3大类:

  • 创建型模式5种:工厂方法、抽象工厂、单例、建造者、原型
  • 结构型模式7种:适配器、代理、桥接、装饰者、外观、享元、组合
  • 行为型模式11种:模板方法、解释器、策略、观察者、迭代器、职责链、命令、备忘录、状态、访问者、中介者。

上次咱们说了“装饰者模式”。今天咱们聊一聊结构型模式中的“外观模式”。

结构型模式重点在于结构的变化。

“外观模式”又叫“门面模式”不是一个复杂的结构,简单的来说是把多个类的功能集中到一个类的身上,最终用一个类的对象使用出多个类的功能方法。

先准备两个类

A类有a1的方法

B类有b1的方法

再准备一个对外的类

A的对象和B的对象是Face类的两个属性

在a1方法中调用A对象的a1

在b1方法中调用B对象的b1

实际应用的时候,只用Face的对象就能调用出两个对象的两个方法

不用去关心两个方法的具体实现细节

又到了讲故事的环节。

《三国演义》中,刘备摔孩子是一个经典桥段。

有一句歇后语“刘备摔孩子—收买人心”。起因是赵云赵子龙,单枪匹马杀入曹营救出幼主。才有了刘备摔孩子的戏码。但是具体的“七进七出”并不关心,而是最终结果的展示。

赵云:

第一回合:赵云与曹操大军混战,丢了甘夫人糜夫人及阿斗。

第二回合:赵云找到甘夫人后遭遇曹仁部将淳于导将其击杀,并救下糜竺。甘夫人糜竺交给张飞,自己继续寻找阿斗。

第三回合:刺死背剑将军夏侯恩,夺得青釭剑。找到糜夫人及阿斗。糜夫人投井自尽,赵云怀抱阿斗杀出。

第四回合:赵云刺死曹洪的部将晏明。

第五回合:赵云遭遇曹操上将张合,赵云坐骑陷入土坑,后逃脱。

第六回合:赵云遭遇袁绍手下四将,马延、张顗、焦触、张南,并遭到曹操重兵包围。杀死曹操战将五十余员。后突围。

第七回合:赵云杀出重围后遭遇夏侯敦部将钟缙、钟绅,将其杀死。

刘备:

“险些折损我一员猛将”

摔阿斗~~

赵云的行为“七进七出,救出阿斗”

刘备的行为“救回阿斗,摔~”

外观类“调用行为,控制流程”

最后结果“七进七出救阿斗,刘备摔儿子拉拢人心”,从此以后赵云死忠刘备。

23种设计模式(十一)外观模式(阁瑞钛伦特软件-九耶实训)相关推荐

  1. 23种设计模式(十四)模板方法模式(阁瑞钛伦特软件-九耶实训)

    常说的设计模式是23种设计模式,分为3大类: 创建型模式5种:工厂方法.抽象工厂.单例.建造者.原型 结构型模式7种:适配器.代理.桥接.装饰者.外观.享元.组合 行为型模式11种:模板方法.解释器. ...

  2. 23种设计模式(二十三)访问者模式(阁瑞钛伦特软件-九耶实训)

    常说的设计模式是23种设计模式,分为3大类: 创建型模式5种:工厂方法.抽象工厂.单例.建造者.原型 结构型模式7种:适配器.代理.桥接.装饰者.外观.享元.组合 行为型模式11种:模板方法.解释器. ...

  3. 23种设计模式(二十二)状态模式(阁瑞钛伦特软件-九耶实训)

    常说的设计模式是23种设计模式,分为3大类: 创建型模式5种:工厂方法.抽象工厂.单例.建造者.原型 结构型模式7种:适配器.代理.桥接.装饰者.外观.享元.组合 行为型模式11种:模板方法.解释器. ...

  4. 在Windows操作系统中安装MySQL8教程(一)(二)(阁瑞钛伦特软件—九耶实训)

    1.1 下载MySQL8数据库 (已上传) 打开网址: https://www.mysql.com 显示界面如图1-xx所示. 点击DOWNLOADS菜单,显示界面如图1-xx所示. 点击" ...

  5. Oracle使用OMS备份数据(阁瑞钛伦特软件-九耶实训)

    在oracle 中可以方便的把数据导出为文件,或者从文件导入.通过oracle的管理服务器(oracle management server,oms)可以方便的实现,整个操作过程中有很多地方需要解释说 ...

  6. 添加用户并配置读写权限(阁瑞钛伦特软件-九耶实训)

    1.3.1添加用户并授予读写权限 Step01:进入CMD控制台输入命令如图1.43所示. 图1.43 增加1个ghy账户并设置密码 参数-c就是创建password.ini文件,再创建1个用户时就不 ...

  7. 23种设计模式之外观模式

    文章目录 概述 外观模式的特点 外观模式的应用场景 外观模式的结构与实现 模式的结构 模式的实现 总结 概述 外观(Facade)模式又叫作门面模式,是一种通过为多个复杂的子系统提供一个一致的接口,而 ...

  8. 23种设计模式之外观模式(Facade)

    外观模式是对象的结构模式,要求外部与一个子系统的通信必须通过一个统一的外观对象进行,为子系统中的一组接口提供一个一致的界面,外观模式定义了一个高层接口,这个接口使得这一子系统更加容易使用. 优点: 1 ...

  9. (你也可以像别人一样对框架底层源码来去自如)23种设计模式之外观模式

    外观模式 基本介绍 外观模式,也叫过程模式:外观模式为子系统中的一组接口提供一个一致的界面,此模式定义了一个高层接口,这个接口使得这一子系统更加容易使用. 外观模式通过定义一个一致的接口,用以屏蔽内部 ...

最新文章

  1. Lampiao靶机渗透测试
  2. matlab小波变换边缘检测,在matlab 下 实现 用小波变换对图像进行边缘检测 程序代码...
  3. 关于python2.7的md5加密遇到的问题(TypeError: Unicode-objects must be encoded before hashing)...
  4. TF之DD:利用Inception模型+GD算法生成更大尺寸的Deep Dream精美图片
  5. 如何通过自学找到一份开发的工作?
  6. 阿里、腾讯 | 算法岗面试复盘
  7. php数据库连接通常方式,php连接数据库的几种方式
  8. 扣丁软件测试基础知识,总结钢筋工程266问,包你从入门到放弃,建议收藏
  9. Java学习 DAY18 Map、File、IO流
  10. vi/vim查看空格、制表符等特殊符号
  11. 房贷又降,不买!还能降
  12. 《增量绩效管理》读后感--回归产品,增量产出
  13. Linux之创建、删除文件及目录命令touch、echo、mkdir、rm、rmdir
  14. 昨天申请了三丰云免费云服务器,体验不错
  15. 科学解释:为什么越是无知的人越自信?
  16. kms自动激活Windows和Office
  17. bp神经网络和cnn神经网络,bp神经网络与cnn区别
  18. 1688商品详情SKU
  19. 开放平台、标准接口、接口聚合的架构设计
  20. vertical-align作用,基线详解

热门文章

  1. 数据结构实验七(查找)
  2. VMwarePlayer配置Linux
  3. 使用HTML5中的canvas绘制灰太狼图像
  4. 矢量图一般是利用计算机绘图程序,西南20春《powerpoint多媒体课件制作》【1055】…...
  5. Conformal ECO 流程介绍
  6. 项目实战:Qt给指定手机发送短信(点对点、群发等等)
  7. python机器学习实战(三)
  8. 云课堂缺勤补签软件_在线课堂回顾 | 一小时玩转高通量虚拟筛选
  9. JS与JQuery分别实现淘宝(五星好评特效)
  10. CESM(CIME)笔记