婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > php設計模式之模板模式實例分析【星際爭霸游戲案例】

php設計模式之模板模式實例分析【星際爭霸游戲案例】

熱門標簽:邢臺400電話辦理 南寧電話外呼系統線路 重慶外呼電銷系統多少錢 咸陽電銷 正規電銷機器人系統 嘟嘟云外呼系統 濟源百應電銷機器人聯系方式 南京3D地圖標注 辦理400電話哪家好點

本文實例講述了php設計模式之模板模式。分享給大家供大家參考,具體如下:

星際中的蟲族部隊有個特別的進化兵種,就是飛龍,飛龍可以變成空中衛士(天蟹)或者吞噬者(對空的)。另外還有口水兵可以進化變成地刺。

這三個變化過程都是類似的:變化的原部隊消失,產生一個蛋或繭,孵化一會兒,蛋消失,新的部隊產生。

如果我們把這三個進化獨立開,就會產生重復的代碼,冗余度增大了,所以我們要設法減少多余的代碼。

待解決的問題:要經歷同樣的幾個步驟,只是每個步驟的細節會有不同。

思路:做一個進化工程的框架,我們只要控制細節就可以了。

模板模式模式示例:

?php
  //進化的框架類,它是個抽象類
  abstract class evolution 
  {
    //框架方法,由它來實施各個步驟,用final禁止子類覆蓋
    final public function process($troop)
    {
      //生成一個蛋,參數為進化的部隊
      $egg = $this->becomeEgg($troop);

      //等待蛋孵化,參數為蛋
      $this->waitEgg($egg);

      //孵化后產生新部隊
      return $this->becomeNew($egg);
    }

    //下面三個抽象方法,由具體子類來實現
    abstract public function becomeEgg($troop);

    abstract public function waitEgg($egg);

    abstract public function becomeNew($egg);
  }

  //為了簡單說明,這里用空中衛士(天蟹)的進化類來演示,地刺等的處理方法類似

  //天蟹的進化類繼承抽象進化類
  class GuardianEvolution extends evolution 
  {
    //實現生成一個蛋
    public function becomeEgg($troop)
    {
      //銷毀飛龍,返回一個蛋的對象的代碼
    }

    //等待蛋孵化
    public function waitEgg($troop)
    {
      //等待幾十秒鐘的代碼
    }

    //孵化后產生新部隊
    public function becomeNew(($troop)
    {
      //銷毀蛋,返回一個天蟹
    }
  }

  //新建一個天蟹進化的對象
  $e1 = new GuardianEvolution();

  //讓它調用父類的進化框架函數,自動完成三個步驟
  $e1->process($sds);

?>

用途總結:模板模式可以將一系列的步驟自動化,同時又可以滿足不同的細節變化。

實現總結:需要一個抽象類來包含框架函數,讓具體的子類繼承它,并實現所有的步驟。使用的時候只要調用框架函數就自動完成了。

更多關于PHP相關內容感興趣的讀者可查看本站專題:《php面向對象程序設計入門教程》、《PHP數組(Array)操作技巧大全》、《PHP基本語法入門教程》、《PHP運算與運算符用法總結》、《php字符串(string)用法總結》、《php+mysql數據庫操作入門教程》及《php常見數據庫操作技巧匯總》

希望本文所述對大家PHP程序設計有所幫助。

您可能感興趣的文章:
  • php設計模式 Adapter(適配器模式)
  • PHP設計模式之適配器模式代碼實例
  • php設計模式之適配器模式原理、用法及注意事項詳解
  • php設計模式之迭代器模式實例分析【星際爭霸游戲案例】
  • php設計模式之觀察者模式實例詳解【星際爭霸游戲案例】
  • php設計模式之職責鏈模式實例分析【星際爭霸游戲案例】
  • php設計模式之正面模式實例分析【星際爭霸游戲案例】
  • php設計模式之原型模式分析【星際爭霸游戲案例】
  • php設計模式之代理模式分析【星際爭霸游戲案例】
  • php設計模式之中介者模式分析【星際爭霸游戲案例】
  • php設計模式之適配器模式實例分析【星際爭霸游戲案例】

標簽:南通 通遼 黃山 河南 唐山 平頂山 武漢 隴南

巨人網絡通訊聲明:本文標題《php設計模式之模板模式實例分析【星際爭霸游戲案例】》,本文關鍵詞  php,設計模式,之,模板,模式,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《php設計模式之模板模式實例分析【星際爭霸游戲案例】》相關的同類信息!
  • 本頁收集關于php設計模式之模板模式實例分析【星際爭霸游戲案例】的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 垣曲县| 若羌县| 青阳县| 大同市| 武清区| 南和县| 榆社县| 读书| 丰顺县| 怀集县| 香格里拉县| 新晃| 衢州市| 新巴尔虎右旗| 雷山县| 乐至县| 沙河市| 晋城| 增城市| 康平县| 济阳县| 中宁县| 宿州市| 昭通市| 哈密市| 满洲里市| 夏河县| 化德县| 保靖县| 彭州市| 广东省| 龙口市| 大庆市| 丽水市| 兰州市| 大宁县| 关岭| 大冶市| 宁乡县| 西丰县| 安乡县|