PHP工厂模式的研究

工厂方法模式 把 创造者类 和要生产的 产品类 分离。创建者是一个工厂类,其定义了产品生产的类方法。一般情况下,创建者类的每个子类实例化一个相应的产品子类。

 

下面是单个产品的实现代码:

<?php

abstract class ApptEncoder{
    abstract function encode();
}

class BloggsApptEncoder extends ApptEncoder{
    function encode(){
        return "data encode farmat";
    }
}

abstract class CommsManager{
    abstract function getHeaderText();
    abstract function getApptEncoder();
    abstract function getFootText();
}

class BloggsCommsManager extends CommsManager{
    function getHeaderText(){
        return "header";
    }
    function getApptEncoder(){
        return new BloggsApptEncoder();
    }
    function getFooterText(){
        return "footer";
    }
}
BloggsCommsManager::getApptEncoder()方法 得到一个ApptEncoder类型的对象。
产生其他的产品,只需要创建和BloggsCommsManager 类似的方法就行了。
posted @ 2014-03-20 17:23  jami918  阅读(190)  评论(0编辑  收藏  举报