>  기사  >  백엔드 개발  >  PHP 브리지 모드에 대한 자세한 설명 및 사례

PHP 브리지 모드에 대한 자세한 설명 및 사례

墨辰丷
墨辰丷원래의
2018-05-16 13:52:291730검색

이 글은 주로 PHP 브릿지 모드에 대한 자세한 설명과 사례를 소개하고 있으니 관심 있는 분들이 참고하시면 좋을 것 같습니다.

브리지 모드(Bridge)는 추상적인 부분과 구현 부분을 분리하여 독립적으로 변경할 수 있도록 하는 객체 구조 모드입니다.
요약하자면, 다차원에서는 각각의 변화가 서로 영향을 미치지 않으며, 동적 결합을 위한 브리징을 통해 특정 연관이 설정되는 모델입니다.

피망과 다진 돼지고기 덮밥, 감자와 소고기 덮밥 등 다양한 요리와 함께 돈부리를 먹을 때와 같습니다.

주식: 밥, 국수.
보충식품: 풋고추 다진 돼지고기, 감자, 쇠고기.

주식과 보완식품은 차원이 다르며 각각 계속해서 유형을 추가할 수 있습니다. 예를 들어 보완식품에는 부추, 계란 등을 하나 더 추가할 수 있고 서로 결합될 수 있습니다.

다음과 같이 코드를 기록하세요:

/**       
 * Created by Sublime.       
 * User: Ryan       
 * Date: 2018/1/22       
 * File:Bridge.php       
 */        
    
/** 抽象一个主食类      
 *  abstract Food          
 */    
abstract Class Food  
{  
    public $dishes; // 一开始会赋值对象  
    abstract function MakeFood();  
}  
  
/** 盖浇饭类 继承主食类     
 *  Rice          
 */    
Class Rice extends Food  
{  
    function MakeFood()  
    {  
        $this->dishes->MakeDishes();  
        echo "盖浇饭<br/>";  
    }  
}  
  
/** 盖浇面类 继承主食类     
 *  Noodle          
 */  
Class Noodle extends Food  
{  
    function MakeFood()  
    {  
        $this->dishes->MakeDishes();  
        echo "盖浇面<br/>";  
    }  
}  
  
  
/** 菜肴接口     
 *  interface Dishes          
 */  
interface Dishes  
{  
    function MakeDishes();  
}  
  
/** 青椒肉丝类 继承菜肴接口   
 *  QJRS          
 */  
Class QJRS implements Dishes  
{  
   function MakeDishes(){  
       echo "青椒肉丝";  
   }      
}  
  
/** 土豆牛肉类 继承菜肴接口   
 *  TDNR          
 */  
Class TDNR implements Dishes  
{  
   function MakeDishes(){  
       echo "土豆牛肉";  
   }      
}
<?php    
// 桥接模式 index.php  
header("Content-Type:text/html;charset=utf-8");  
require_once "Bridge.php";    
  
// 要一份盖浇饭  
$rice = new Rice();  
  
// 浇头要 青椒肉丝  
$rice->dishes = new QJRS();  
  
// 上菜  
$rice->MakeFood();  
  
// 同样的要一份盖浇饭  
$rice = new Rice();  
  
// 这次改了浇头要 土豆牛肉  
$rice->dishes = new TDNR();  
  
// 上菜  
$rice->MakeFood();


출력 결과:

풋고추 다진 돼지고기 덮밥
감자 소고기 덮밥

관련 추천:

PHP 디자인 패턴 브릿지 모드

JavaScript 디자인 패턴 시리즈 6 : 브리지 모드

리눅스 브리지 모드에서 고정 IP를 구성하는 방법

위 내용은 PHP 브리지 모드에 대한 자세한 설명 및 사례의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.