门面设计模式php,php设计模式-门面模式(Facade Pattern)
門面模式概念
門面模式,是指提供一個統(tǒng)一的接口去訪問多個子系統(tǒng)的多個不同的接口,它為子系統(tǒng)中的一組接口提供一個統(tǒng)一的高層接口。使得子系統(tǒng)更容易使用。
引入門面角色之后,用戶只需要直接與門面角色交互,用戶與子系統(tǒng)之間的復(fù)雜關(guān)系由門面角色來實現(xiàn),從而降低了系統(tǒng)的耦合度,遵從了迪米特法則
門面模式實現(xiàn)方法
定義一個具備所需接口的新類(門面類)
新類使用原來的系統(tǒng)
客戶使用門面類對象與原系統(tǒng)打交道
門面模式實例<?php
interface?OsInterface
{
public?function?halt();
public?function?getName():?string;
}
interface?BiosInterface
{
public?function?execute();
public?function?waitForKeyPress();
public?function?launch(OsInterface?$os);
public?function?powerDown();
}
class?Facade
{
/**
*?@var?OsInterface
*/
private?$os;
/**
*?@var?BiosInterface
*/
private?$bios;
/**
*?@param?BiosInterface?$bios
*?@param?OsInterface???$os
*/
public?function?__construct(BiosInterface?$bios,?OsInterface?$os)
{
$this->bios?=?$bios;
$this->os?=?$os;
}
public?function?turnOn()
{
$this->bios->execute();
$this->bios->waitForKeyPress();
$this->bios->launch($this->os);
}
public?function?turnOff()
{
$this->os->halt();
$this->bios->powerDown();
}
}
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎勵來咯,堅持創(chuàng)作打卡瓜分現(xiàn)金大獎總結(jié)
以上是生活随笔為你收集整理的门面设计模式php,php设计模式-门面模式(Facade Pattern)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 铁路跑酷无限金币钥匙怎么修改
- 下一篇: PHP高德地图描点,引用高德地图描点画行