明霞山资源网 Design By www.htccd.com
本文实例讲述了php设计模式之建造器模式。分享给大家供大家参考,具体如下:
星际里面有不少的任务关,也可以自己编辑地图,画面上有各种地形,建筑和部队。
这存在一个问题,初始化画面的流程很乱。
待解决的问题:完成初始化画面的工作,同时尽量减少各种绘制细节的耦合。
思路:既然星际的画面由几个部分组成:地图(就是地形和矿产),建筑,部队。那么我们把他们看成是零件,组装起来就是最后的产品(整个画面)。
建造器(Builder)模式示例:
<"地图零件\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();
//最后让建造器组装零件,生成画面
$concreteBuilder->getResult();
"_blank" href="//www.jb51.net/Special/43.htm">php面向对象程序设计入门教程》、《PHP数组(Array)操作技巧大全》、《PHP基本语法入门教程》、《PHP运算与运算符用法总结》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》
希望本文所述对大家PHP程序设计有所帮助。
明霞山资源网 Design By www.htccd.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
明霞山资源网 Design By www.htccd.com
暂无评论...
《魔兽世界》大逃杀!60人新游玩模式《强袭风暴》3月21日上线
暴雪近日发布了《魔兽世界》10.2.6 更新内容,新游玩模式《强袭风暴》即将于3月21 日在亚服上线,届时玩家将前往阿拉希高地展开一场 60 人大逃杀对战。
艾泽拉斯的冒险者已经征服了艾泽拉斯的大地及遥远的彼岸。他们在对抗世界上最致命的敌人时展现出过人的手腕,并且成功阻止终结宇宙等级的威胁。当他们在为即将于《魔兽世界》资料片《地心之战》中来袭的萨拉塔斯势力做战斗准备时,他们还需要在熟悉的阿拉希高地面对一个全新的敌人──那就是彼此。在《巨龙崛起》10.2.6 更新的《强袭风暴》中,玩家将会进入一个全新的海盗主题大逃杀式限时活动,其中包含极高的风险和史诗级的奖励。
《强袭风暴》不是普通的战场,作为一个独立于主游戏之外的活动,玩家可以用大逃杀的风格来体验《魔兽世界》,不分职业、不分装备(除了你在赛局中捡到的),光是技巧和战略的强弱之分就能决定出谁才是能坚持到最后的赢家。本次活动将会开放单人和双人模式,玩家在加入海盗主题的预赛大厅区域前,可以从强袭风暴角色画面新增好友。游玩游戏将可以累计名望轨迹,《巨龙崛起》和《魔兽世界:巫妖王之怒 经典版》的玩家都可以获得奖励。