[PHP]外观/门面/Facade模式-结构型设计模式

外观(Facade)模式又叫作门面模式,是一种通过为多个复杂的子系统提供一个一致的接口,而使这些子系统更加容易被访问的模式。该模式对外有一个统一接口,外部应用程序不用关心内部子系统的具体细节,这样会大大降低应用程序的复杂度,提高了程序的可维护性。符合迪米特原则

如果我想使用多个类的代码,先创建个门面类统一去调用,我只需要和这个门面打交道,不用去了解那些类的细节
这个就是门面类,我想执行的时候只需要知道调用门面类的run方法就行了

复制代码
class Facade
{
    private Os $os;
    private Bios $bios;

    public function __construct(Bios $bios, Os $os)
    {
        $this->bios = $bios;
        $this->os = $os;
    }
    public function run()
    {
        $this->bios->run();
        $this->os->runOs(;
    }
}
复制代码

Os类和Bios类都有自己的具体实现

具体使用的时候
$facade = new Facade($bios, $os);
$facade->run();

posted @   唯一客服系统开发笔记  阅读(238)  评论(0编辑  收藏  举报
编辑推荐:
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
历史上的今天:
2019-10-19 [日常] 安装windows+deepin双系统
2018-10-19 [PHP]算法-旋转数组的最小值的PHP实现
点击右上角即可分享
微信分享提示
1
chat with us