标签:
二十三种设计模式分为三大类:
创建型模式,共五种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。
结构型模式,共七种:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。
行为型模式,共十一种:策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式。
1 <?php 2 /* 3 * php设计模式——抽象工厂模式(Abstract Factory) 4 */ 5 6 7 /* 8 * IApp接口 不同类型App产品 9 */ 10 interface IApp { 11 function createApp(); 12 } 13 14 /* 15 * 实现IApp接口 发布IOSApp产品 16 */ 17 class IOSApp implements IApp { 18 public function createApp() { 19 return "IOSApp"; 20 } 21 } 22 23 /* 24 * 实现IApp接口 发布AndroidApp产品 25 */ 26 class AndroidApp implements IApp { 27 public function createApp() { 28 return "AndroidApp"; 29 } 30 } 31 32 /* 33 * IFactory接口 不同类型App制造商 34 */ 35 interface IFactory { 36 function production(); 37 } 38 39 /* 40 * 苹果App制造商 制定IOSApp标准 41 */ 42 class Apple implements IFactory { 43 public function production() { 44 return new IOSApp (); 45 } 46 } 47 48 /* 49 * 谷歌App制造商 制定AndroidApp标准 50 */ 51 class Google implements IFactory { 52 public function production() { 53 return new AndroidApp (); 54 } 55 } 56 57 ?> 58 59 <html> 60 <head> 61 <meta http-equiv="content-type" content="text/html;charset=utf-8"> 62 <title>mvc</title> 63 <script type="text/javascript" src="js/jquery.js"></script> 64 <style> 65 * { 66 margin: 0; 67 padding: 0; 68 border: 0; 69 } 70 </style> 71 72 <?php 73 //android制造商 74 $google = new Google(); 75 76 //androidApp标准 77 $androidApp = $google->production(); 78 79 //发布androidApp产品 80 $strApp = $androidApp->createApp(); 81 ?> 82 83 </head> 84 <body> 85 <div> 86 <?php 87 echo $strApp; 88 ?> 89 </div> 90 </body> 91 </html> 92 93 <script type="text/javascript"> 94 </script>
php设计模式——抽象工厂模式(Abstract Factory)
标签:
原文地址:http://www.cnblogs.com/yuge790615/p/4783207.html