开发工具:
文件大小: 6kb
下载次数: 0
上传时间: 2008-11-13
详细说明:
设计模式 /* * 生成器模式 * * 将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示. * 为了将构建复杂对象的过程和它的部件解耦,非常类似抽象工厂模式 * * @author doodoo */ /** * 生成器,说明如何装配 * * @author doodoo */ interface Builder{ /* * 创建A部分,比如一部汽车的方向盘 */ public function buildPartA(); /** * 创建B部分,比如汽车的车轮 */ public function buildPartB(); /** * 创建C部分,比如汽车的发动机 */ public function buildPartC(); /** * 得到产品,即汽车 */ public function getProduct(); } /** * 具体如何装配?具体对象 */ class ConcreteBuilder implements Builder { public fun ction __construct(){ // do something } public function buildPartA(){ //do something... } public function buildPartB(){ //do something... } public function buildPartC(){ //do something... } public function getProduct(){ // 返回成品结果 } } /** * 装配工 * * 负责将装配完成,装配工知道该如何装配 * * @author doodoo */ class Director{ private $builder = null; public function __construct(Builder $builder){ $this->builder = $builder; } /** * 进行装配 */ public function construct(){ $this->builder->buildPartA(); $this->builder->buildPartB(); $this->builder->buildPartC(); } } /** * 复杂对象 */ interface Product{ } // test $builder = new ConcreteBuilder(); $director = new Director($builder); // 对象被装配起来了。 $director->construct(); $product = $builder->getProduct(); ...展开收缩
(系统自动生成,下载前可以参看下载内容)
下载文件列表
相关说明
- 本站资源为会员上传分享交流与学习,如有侵犯您的权益,请联系我们删除.
- 本站是交换下载平台,提供交流渠道,下载内容来自于网络,除下载问题外,其它问题请自行百度。
- 本站已设置防盗链,请勿用迅雷、QQ旋风等多线程下载软件下载资源,下载后用WinRAR最新版进行解压.
- 如果您发现内容无法下载,请稍后再次尝试;或者到消费记录里找到下载记录反馈给我们.
- 下载后发现下载的内容跟说明不相乎,请到消费记录里找到下载记录反馈给我们,经确认后退回积分.
- 如下载前有疑问,可以通过点击"提供者"的名字,查看对方的联系方式,联系对方咨询.