码迷,mamicode.com
首页 > Web开发 > 详细

php设计模式——抽象工厂模式(Abstract Factory)

时间:2015-09-05 15:08:36      阅读:206      评论:0      收藏:0      [点我收藏+]

标签:

二十三种设计模式分为三大类:

创建型模式,共五种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。

结构型模式,共七种:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。

行为型模式,共十一种:策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式。 

技术分享
 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>
View Code

 

php设计模式——抽象工厂模式(Abstract Factory)

标签:

原文地址:http://www.cnblogs.com/yuge790615/p/4783207.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!