Heim  >  Artikel  >  Backend-Entwicklung  >  PHP-Designmuster-Factory-Methode

PHP-Designmuster-Factory-Methode

不言
不言Original
2018-04-18 11:37:151564Durchsuche

Der Inhalt dieses Artikels handelt von der Factory-Methode des PHP-Entwurfsmusters. Jetzt kann ich ihn mit allen teilen, die ihn benötigen.

Ich habe mich heute darauf konzentriert, ihn zu lernen Factory-Methode (FactoryMethod) Dieses Entwurfsmuster, im Folgenden sind einige meiner Lernerfahrungen und Erfahrungen aufgeführt, machen eine Aufzeichnung:

Factory-Methode Es handelt sich um einen der 23 Erstellungsmodi. Da ich bereits ein gewisses Verständnis für einfache Fabriken habe, ist die Factory-Methode eine Weiterentwicklung einfacher Fabriken Es ist ein ermüdender Prozess, mehrere verschiedene Klassen zu erstellen. Die Factory-Methode besteht darin, diese interaktive Klasse auf ihrer Basis aufzuteilen, sodass jede Klasse unabhängig erstellt werden kann, um die horizontale Erweiterung zu erleichtern.

Nehmen Sie als Beispiel das Erstellen einer Spielfigur:

<?php    
   
    
/** Hero  
 *  英雄接口  
 */    
interface Hero  
{  
    function Create();   
}  
  
/** GuanYu 关羽  
 *  具体英雄类  
 */   
Class GuanYu implements Hero  
{   
    function Create()  
    {  
       echo "关羽加入战场。。。<br/>";  
    }  
}  
  
/** ZhangFei 张飞 
 *  具体英雄类  
 */   
Class ZhangFei implements Hero  
{  
    function Create()  
    {  
       echo "张飞加入战场。。。<br/>";  
    }   
}  
  
  
/** FactoryMethod  
 *  工厂方法接口  
 */  
interface FactoryMethod  
{  
    function CreateHero();  
}  
  
/** GuanYuFactory  
 *  关羽工厂类   
 */  
Class GuanYuFactory implements FactoryMethod  
{  
    function CreateHero()  
    {  
        return new GuanYu();  
    }   
}  
  
/** ZhangFeiFactory  
 *  张飞工厂类  
 */  
Class ZhangFeiFactory implements FactoryMethod  
{  
    function CreateHero()  
    {  
        return new ZhangFei();  
    }   
}
<?php  
// 工厂方式 客户端 index.php  
header("Content-Type:text/html;charset=utf-8");  
  
require_once "FactoryMethod.php";  
  
// 各自调用各自的工厂方法进行创建  
$GYF = new GuanyuFactory();  
$ZFF = new ZhangFeiFactory();  
  
// 调用各自工厂方法的创建英雄方法  
$GuanYu = $GYF->CreateHero();  
$ZhangFei = $ZFF->CreateHero();  
  
// 调用各自创建英雄方法  
$GuanYu->Create();  
$ZhangFei->Create();

Verwandte Empfehlungen:

PHP Design Muster Simple Factory



Das obige ist der detaillierte Inhalt vonPHP-Designmuster-Factory-Methode. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn