日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > php >内容正文

php

php设计之初用于什么,PHP设计模式(七)之门面模式

發布時間:2025/3/12 php 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 php设计之初用于什么,PHP设计模式(七)之门面模式 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一、什么是外觀模式(Facade Pattern)

定義:外觀模式又稱門面模式,提供一個統一的接口,用來訪問子系統中的一群接口。

外部與子系統之間的通信采用門面(Facade)對象來完成。

【舉例】比如麥當勞套餐,套餐包含雞肉卷、漢堡包、可樂等N個單個食物(這就是子系統),而套餐就是門面對象。當我們去點一個套餐時,套餐內的食物(子系統)不會一個一個給你送來,而是等套餐內所有食物做好之后一起送給你。有沒有發現,這與工廠模式有些相像。

二、為什么使用外面模式

主要用來簡化操作。

三、外觀模式結構

外觀角色(Facade): 為子系統封裝統一的對外接口,如同子系統的一個門面。這個類一般不負責具體的業務邏輯,只是一個委托類,具體的業務邏輯由子系統完成。

子系統(SubSystem): 由多個類組成的具有某一特定功能的子系統。可以是第三方庫,也可以是自己的基礎庫,還可能是一個子服務,為整個系統提供特定的功能或服務。

四、實例解釋

繼續一貫以來的餐飲。廚房電器擺放位置太亂,嚴重影響了廚房的整潔,老板決定整改整個電路系統。廚房電器太多,一個一個關掉電源太過于浪費時間,有沒有總控?對,總控。于是老板直接關掉了整個廚房的電源系統,這下就方便多了。實際常見的有屋子里的空氣開關。

五、代碼實現

Freezer.php<?php

/**

*?Freezer?冷藏柜開關?(子系統)

*

*/

class?Freezer

{

//?冷藏柜電源?開

public?function?open()

{

echo?'我是冷藏柜,我接通電源了,開始冷藏工作~~';

}

//?冷藏柜電源?關

public?function?close()

{

echo?'我是冷藏柜,我失去電源了,冷藏工作結束~~';

}

}

SteamRiceMachineSwitch.php<?php

/**

*?SteamRiceMachineSwitch?蒸飯車電源開關控制器?(子系統)

*

*/

class?SteamRiceMachineSwitch

{

//?蒸飯車電源?開

public?function?turnOn()

{

echo?'我是蒸飯車,我接通電源了,我將為你蒸飯~';

}

//?蒸飯車電源?關

public?function?turnOff()

{

echo?'我是蒸飯車,我接通關閉了,我不再為你蒸飯,你自己想辦法去吧~';

}

}

TurnOffFacade.php<?php

/**

*?TurnOffFacade?電源總開關門面

*/

class?TurnOffFacade

{

protected?$freezer;

protected?$steamRiceMachineSwitch;

public?function?__construct()

{

$this->freezer?=?new?Freezer();

$this->steamRiceMachineSwitch?=?new?SteamRiceMachineSwitch();

}

//?總開

public?function?on()

{

$this->freezer->open();

$this->steamRiceMachineSwitch->turnOn();

}

//?總關

public?function?off()

{

$this->freezer->close();

$this->steamRiceMachineSwitch->turnOff();

}

}

index.php<?php

require_once?'./Freezer.php';

require_once?'./SteamRiceMachineSwitch.php';

require_once?'./TurnOffFacade.php';

$facade?=?new?TurnOffFacade();

$facade->on();

$facade->off();

我是夕陽何處尋,期待和優秀的你一起同行!

夕陽何處尋

2020年01月16日

轉載:感謝您對自如初博客網站的認可,所有文章均屬原創文章,技術類文章轉載請注明出處,“自如初博客”;文學類文章請帶文本鏈接地址,否則視為侵權!

很贊哦!(6)

總結

以上是生活随笔為你收集整理的php设计之初用于什么,PHP设计模式(七)之门面模式的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。