组合实体模式 Composite Entity Pattern
说明
  组合实体模式用在持久化机制中。当更新一个组合实体时,内部依赖对象也会自动更新。理解
  各个细颗粒对象组合成一个粗颗粒对象,细颗粒对象和粗颗粒对象又可以组合成组合实体。
  组合实体的内部状态变化也会引起各个颗粒的状态变化。
  通常使用在对象持久化中。结构中包含的角色
- 组合实体(Composite Entity)
- 粗粒度对象(Coarse-Grained Object)
- 依赖对象(Dependent Object)
最小可表达代码
  class Dependent
  {
     private $data;
     public function setData(String $data)
     {
        $this->data = $data; 
     } 
     public function getData()
     {
        return $this->data;
     }
  }
  class CoarseGrained
  {
     private $dependent;
     public function __construct()
     {
        $this->dependent =  new Dependent();
     }
     public function setData(String $data)
     {
        $this->dependent->setData($data);
     }
     public function getData()
     {
        return $this->dependent->getData();
     }
  }
  class CompositeEntity
  {
     private $coarseGrained;
     public function __construct()
     {
        $this->coarseGrained = new CoarseGrained();
     }
     public function setData(String $data)
     {
        $this->coarseGrained->setData($data);
     }
     public function getData()
     {
        return $this->coarseGrained->getData();
     }
  }
  $compositeEntity = new CompositeEntity();
  $compositeEntity->setData("Test");
  echo $compositeEntity->getData();实际应用场景
- EJB 持久化
 
           99+种软件模式
99+种软件模式 
         
                     
                     
             
             关于 LearnKu
                关于 LearnKu
               
                     
                     
                     粤公网安备 44030502004330号
 粤公网安备 44030502004330号 
 
推荐文章: