PHP设计模式(二)适配器模式

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

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

场景: 封装有缺陷的接口设计

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

示例:

<?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";

码上有钱的博客
请先登录后发表评论
  • latest comments
  • 总共0条评论