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

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

示例:FACADE—我有一个专业的Nikon相机,我就喜欢自己手动调光圈、快门,这样照出来的照片才专业,但MM可不懂这些,教了半天也不会。幸好相机有Facade设计模式,把相机调整到自动档,只要对准目标按快门就行了,一切由相机自动调整,这样MM也可以用这个相机给我拍张照片了。

门面模式:外部与一个子系统的通信必须通过一个统一的门面对象进行。门面模式提供一个高层次的接口,使得子系统更易于使用。每一个子系统只有一个门面类,而且此门面类只有一个实例,也就是说它是一个。但整个系统可以有多个门面类。
using System.Collections;using System.Collections.Generic;using UnityEngine;public class CameraFunctionA{    public void Flashlight()    {        Debug.Log("闪光灯功能");    }}public class CameraFunctionB{    public void Focus()    {        Debug.Log("对焦功能");    }}public class CameraFunctionC{    public void Shutter()    {        Debug.Log("快门功能");    }}public class CameraFunctionD{    public void Aperture()    {        Debug.Log("光圈功能");    }}

using System.Collections;using System.Collections.Generic;using UnityEngine;public class FacadeTest : MonoBehaviour{    CameraFunctionA m_CameraFunctionA;    CameraFunctionB m_CameraFunctionB;    CameraFunctionC m_CameraFunctionC;    CameraFunctionD m_CameraFunctionD;    void Start()    {        m_CameraFunctionA = new CameraFunctionA();        m_CameraFunctionB = new CameraFunctionB();        m_CameraFunctionC = new CameraFunctionC();        m_CameraFunctionD = new CameraFunctionD();    }    ///     /// 自动挡拍照   【摄像我也不懂,瞎写的,明白意思就好】    ///     public void AutoShoot()    {        m_CameraFunctionA.Flashlight();//闪光灯功能        m_CameraFunctionD.Aperture();//光圈功能        m_CameraFunctionB.Focus();//对焦功能        m_CameraFunctionC.Shutter();//快门功能    }}

转载地址:http://ecdvl.baihongyu.com/

你可能感兴趣的文章
【转】Android开发之旅:环境搭建及HelloWorld
查看>>
qt creator 快捷键 (二)
查看>>
【分享】博客美化(3)为博客添加一个漂亮的分享按钮
查看>>
VS2010发布、打包安装程序
查看>>
hibernate事务配置Aop aop:advisor模式
查看>>
XSS攻击及防御
查看>>
oracle插入
查看>>
在Ubuntu上为Android系统内置C可执行程序测试Linux内核驱动程序(老罗学习笔记2)...
查看>>
android开发,assets下面的资源文件不会变化/改动
查看>>
Kinect开发学习笔记之(一)Kinect介绍和应用
查看>>
[LeetCode] 3Sum Closest 最近三数之和
查看>>
如何解决严重拖延症
查看>>
C#操作 iis启用父目录
查看>>
JS正则表达式验证数字非常全
查看>>
Android AES加密算法,现在实际上
查看>>
机器学习中的正则化和范数规则化
查看>>
C#修改文件或文件夹的权限,为指定用户、用户组添加完全控制权限
查看>>
Datazen自定义地图
查看>>
Calculate CRC32 as in STM32 hardware (EWARM v.5.50 and later)
查看>>
Android Sdk 国内镜像下载地址
查看>>