首页 > 作文

php设计模式之建造器模式分析【星际争霸游戏案例】

更新时间:2023-04-08 14:56:21 阅读: 评论:0

本文实例讲述了php设计模式之建造器模式。分享给大家供大家参考,具体如下:

星际里面有不少的任务关,也可以自己编辑地图,画面上有各种地形,建筑和部队。
这存在一个问题,初始化画面的流程很乱。

待解决的问题找工作上什么网站:完成初始化画面的工作,同时尽量减少各种绘制细节的耦合。

思路:既然星际的画面由几个部分组成:地图(就是地形和矿产),建筑,部队。那么我们把他们看成是零件北京天气预报一周,组装起来就是最后的产品(整个画面)。

建造器(builder)模式示例:

<?php  //规范制造各个零件的接口  interface builder  {    //制造地图零件    public function buildmappart();    //制造建筑零件    public function buildbuildingpart();   我的野蛮婆婆现代版 //制造部队零件    public function buildarmypart();    //组装零件    public function getresult();  }  //实际建造器类,比如初始化某个任务关  class concretebuilder implements builder  {    //制造地图零件    public function buildmappart()    {      //根据任务的设定画上地图      echo "地图零件\n";    }    //制造建筑零件    public function buildbuildingpart()    {      //根据任务的设定画上建筑,包括玩家的和敌人的      echo "建筑零件\n";    }    //制造部队零件    public function buildarmypart()    {      //根据任务的设定画上部队,包括玩家的和敌人的      echo "部队零件\n";    }    //组装零件    public function getresult()    {      //将所有的东西叠加和处理,形成初始化画面      echo "组装零件\n";    }  }  //监督类,也就是控制绘制流程的类  class director  {    //私有属性,确定使用的建造器    private $builder;    //构造方法,参数为选定的建造器对象    public function __construct($builder)    {      //确定使用的建造器      $this->builder = $builder;    }    //负责建造流程的方法,调用建造器对象的方法,制造所有零件    public function buildeallpart()    {      //制造地图零件      $this->builder->buildmappart();      //制造建筑零件      $this->builder->buildbuildingpart();      //制造部队零件      $this->builder->buildarmypart();    }  }  //假设根据任务关,初始化我们需要的实际建造器对象  $concretebuilder = new concretebuilder();  //初始化一个监督对象  $director = new director($concretebuilder);  //制造所有零件  $director->buildeallpart();  /wolf的复数/最后让建造器组装零件,生成画面  $concretebuilder->getre感谢生活sult();?>

运行结果:

地图零件
建筑零件
部队零件
组装零件

用途总结:建造器模式可以将流程和细节分离,各司其职。

实现总结:需要一个建造器接口或者抽象类,负责规范各个方法,比如上面的builder。然后让实际的建造器类去实现所有的方法,比如上面的concretebuilder。同时需要负责流程管理的监督类,比如上面的director,负责调用建造器的各个零件制造方法。最后让建造器去组装所有的零件。

本文发布于:2023-04-08 14:56:20,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/zuowen/3e1ce0ecf14fa188e5e4b9b022f2d279.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

本文word下载地址:php设计模式之建造器模式分析【星际争霸游戏案例】.doc

本文 PDF 下载地址:php设计模式之建造器模式分析【星际争霸游戏案例】.pdf

标签:零件   部队   初始化   地图
相关文章
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图