美文网首页
PHP设计模式-外观

PHP设计模式-外观

作者: 木有sky | 来源:发表于2019-02-17 10:08 被阅读0次

适用性

把系统中类的调用委托给一个单独的类,对外隐藏了内部的复杂性,很有依赖注入容器的感觉哦

代码示例

/**

* 动物接口

*/

interface AnimalInterface

{

    /**

    * 生产方法

    *

    * @return string

    */

    public function produce();

}

/**

* 实体鸡工厂

*/

class Chicken implements AnimalInterface

{

    /**

    * 生产鸡

    *

    * @return string

    */

    public function produce()

    {

        echo "生产了一只鸡~ \n";

    }

}

/**

* 实体猪工厂

*/

class Pig implements AnimalInterface

{

    /**

    * 生产猪

    *

    * @return string

    */

    public function produce()

    {

        echo "生产了一只猪~ \n";

    }

}

/**

* 外观类

*/

class AnimalMaker

{

    /**

    * 鸡实工厂例

    * @var object

    */

    private $_chicken;

    /**

    * 猪实工厂例

    * @var object

    */

    private $_pig;

    /**

    * 构造函数

    *

    * @return void

    */

    public function __construct()

    {

        $this->_chicken = new Chicken();

        $this->_pig    = new Pig();

    }

    /**

    * 生产方法

    *

    * 生产鸡

    * @return string

    */

    public function produceChicken()

    {

        $this->_chicken->produce();

    }

    /**

    * 生产方法

    *

    * 生产猪

    * @return string

    */

    public function producePig()

    {

        $this->_pig->produce();

    }

}

// 初始化外观类

$animalMaker = new AnimalMaker();

// 生产一只猪

$animalMaker->producePig();

// 生产一只鸡

$animalMaker->produceChicken();

相关文章

网友评论

      本文标题:PHP设计模式-外观

      本文链接:https://www.haomeiwen.com/subject/ayrieqtx.html