PHP 设计模式 - 适配器模式

适配器模式:

概念:适配器模式其实也是一种为了解耦的设计模式,为了让客户端的调用变得更简单统一,将源接口转换为目标接口的过程封装到特定的过程中,这个过程就叫适配。

目的:适配器模式将原本不兼容的接口转换为客户期望的接口,使得原本由于接口不兼容而不能一起工作的类能够一起工作。

场景:

  • 封装有缺陷的接口设计
  • 统一多个类的接口设计,比如一个支付系统,有三种不同的支付方式,微信支付、支付宝支付、网银支付,这三种支付的实现方法都不一样,那么我们可以用适配器模式,让他们对外具有统一的方法,这样,我们在调用的时候就非常的方便。
  • 兼容老版本的接口

示例:

 
interface UserInterface {
    function getUserName();
} 

class User {      
    private $name;      

    function __construct($name) {      
        $this->name = $name;      
    }      

    public function getName() {      
        return $this->name;      
    }
}

class UserInfo implements UserInterface {      
    protected $user;

    function __construct($user) {      
        $this->user = $user;
    }


    public function getUserName() {
        return $this->user->getName();      
    }
}  

// 旧方法
$olduser = new User('达达');      
echo $olduser->getName()."n";   

// 新方法
$newuser = new UserInfo($olduser);      
echo $newuser->getUserName()."n";

参考:php 八大设计模式-适配器模式

你可能感兴趣的:(设计模式,PHP,php,设计模式,适配器模式)