• 技术文章 >PHP >PHP教程

    php桥接模式的作用

    小妮浅浅小妮浅浅2021-07-02 14:26:18原创3871

    作用说明

    1、桥接模式分离抽象接口及其实现部分,实现解耦,比继承更好的解决方案。

    2、便于扩展,桥接模式比继承更灵活,在减少创建类的同时也便于组合。

    3、桥接模式可用于两个独立变化维度。

    实例

    // 员工分组
     
     
    abstract class Staff
    {
        abstract public function staffData();
    }
     
    class CommonStaff extends Staff
    {
        public function staffData()
        {
            return "小名,小红,小黑";
        }
    }
     
    class VipStaff extends Staff
    {
        public function staffData()
        {
            return '小星、小龙';
        }
    }
     
     
     
     
     
    // 发送形式
     
    // 抽象父类
    abstract class SendType
    {
        abstract public function send($to, $content);
    }
     
    class QQSend extends SendType
    {
        public function __construct()
        {
            // 与QQ接口连接方式
        }
     
        public function send($to, $content)
        {
            return $content. '(To '. $to . ' From QQ)<br>';
        }
    }
     
     
     
     
    class SendInfo
    {
        protected $_level;
        protected $_method;
     
        public function __construct($level, $method)
        {
            //  这里可以使用单例控制资源的消耗
            $this->_level = $level;
            $this->_method = $method;
        }
     
        public function sending($content)
        {
            $staffArr = $this->_level->staffData();
            $result = $this->_method->send($staffArr, $content);
            echo $result;
        }
    }
     
     
     
    // 客户端调用
     
    $info = new SendInfo(new VipStaff(), new QQSend());
    $info->sending( '回家吃饭');
     
    $info = new SendInfo(new CommonStaff(), new QQSend());
    $info->sending( '继续上班');
    输出结果:
     
    回家吃饭(To 小星、小龙 From QQ)
    继续上班(To 小名,小红,小黑 From QQ)

    以上就是php桥接模式的作用,希望对大家有所帮助。更多php学习指路:php教程

    专题推荐:php桥接模式
    上一篇:php桥接模式是什么 下一篇:php安装grpc扩展的方法

    相关文章推荐

    • php static的三种使用方法• php $this是什么意思• php中$this的就近原则• php数组中array_column()函数的使用• php数组array_multisort()函数是什么• php empty()函数的用法• php按值传递和引用传递的比较• php命令模式如何理解• php常量中两种定义方式的比较• php中foreach的使用• php迭代器iterator的作用• php迭代器的工作原理分析• php聚合式迭代器是什么• php桥接模式是什么

    全部评论我要评论

    © 2021 Python学习网 苏ICP备2021003149号-1

  • 取消发布评论
  • 

    Python学习网