이 글의 내용은 PHP 디자인 패턴의 팩토리 메소드에 대한 내용입니다. 이는 특정 참조 가치가 있습니다. 이제 모든 사람과 공유합니다. 도움이 필요한 친구들은 이를 참조할 수 있습니다.
오늘은 팩토리 메소드(FactoryMethod)를 배우는 데 집중했습니다. ) 이 디자인 패턴은 다음과 같습니다. 나의 학습 경험과 경험을 기록해 보세요.
Factory 메소드는 23가지 패턴 중 생성 패턴 중 하나입니다. 이전에 간단한 Factory에 대해 어느 정도 이해하고 있었기 때문입니다. 팩토리 메소드는 단순한 팩토리의 진화입니다. 클라이언트와 상호 작용하는 클래스는 여러 개의 서로 다른 클래스를 생성해야 하며 이는 매우 피곤한 프로세스입니다. 상호 작용 클래스는 수평 확장을 용이하게 하기 위해 각 클래스를 독립적으로 생성할 수 있도록 분할됩니다.
게임 캐릭터 생성을 예로 들어보세요:
<?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();
PHP Design Pattern Simple Factory
위 내용은 PHP 디자인 패턴 팩토리 메소드의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!