• 设计模式-外观模式


    一:外观模式 Facade Pattern:
    外部与一个子系统进行通信必须通过一个统一的外观对象进行,为子系统中的一组接口提供一个一致的界面,外观
    模式定义了一个高层接口,这个接口使得这一接口更加容易使用。
    它又称为门面模式,是一种对象结构型模式。

    二:外观模式角色
    1:Facade: 外观角色
    2:SubSystem:子系统角色

    三:外观模式结果图

    来自 《大话设计模式》

    四:实例

    <?php
    class SubSystemOne
    {
        public function MethodOne() {
            echo " 子系统方法一 ";
        }
    
    }
    
    class SubSystemTwo
    {
        public function MethodTwo() {
            echo " 子系统方法二 ";
        }
    }
    
    class SubSystemThree
    {
        public function MethodThree() {
            echo " 子系统方法三 ";
        }
    }
    
    class SubSystemFour
    {
        public function MethodFour() {
            echo " 子系统方法四 ";
        }
    }
    
    class Facade
    {
        public $subSystemOne;
        public $subSystemTwo;
        public $subSystemThree;
        public $subSystemFour;
    
        public function __construct() {
            $this->subSystemOne = new SubSystemOne();
            $this->subSystemTwo = new SubSystemTwo();
            $this->subSystemThree = new SubSystemThree();
            $this->subSystemFour = new SubSystemFour();
        }
    
        public function MethodA() {
            echo "
     方法组 A() ----- 
    ";
    
            $this->subSystemOne->MethodOne();
            $this->subSystemTwo->MethodTwo();
            $this->subSystemFour->MethodFour();
        }
    
        public function MethodB() {
             echo "
     方法组 B() ----- 
    ";
    
            $this->subSystemTwo->MethodTwo();
            $this->subSystemThree->MethodThree();
        }
    }
    
    $facade = new Facade();
    $facade->MethodA();
    
    $facade->MethodB();
  • 相关阅读:
    修改注释的风格
    PHP in_array
    PHP end
    PHP each
    GitHub和SourceTree入门教程
    面试题解析(不定时更新)
    Container With Most Water
    Minimum Path Sum
    Generate Parentheses
    Unique Paths
  • 原文地址:https://www.cnblogs.com/jiujuan/p/10296285.html
Copyright © 2020-2023  润新知