日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
php工廠方法模式的好處是什么

本文操作環(huán)境:Windows10系統(tǒng)、php7.1版、Dell G3電腦。

此模式中,通過定義一個抽象的核心工廠類,并定義創(chuàng)建產(chǎn)品對象的接口,創(chuàng)建具體產(chǎn)品實(shí)例的工作延遲到其工廠子類去完成。

這樣做的好處是核心類只關(guān)注工廠類的接口定義,而具體的產(chǎn)品實(shí)例交給具體的工廠子類去創(chuàng)建。當(dāng)系統(tǒng)需要新增一個產(chǎn)品,無需修改現(xiàn)有系統(tǒng)代碼,只需要添加一個具體產(chǎn)品類和其對應(yīng)的工廠子類,是系統(tǒng)的擴(kuò)展性變得很好,符合面向?qū)ο缶幊痰拈_閉原則。

";
  }
  public function say(){
      echo "I am Cat class 
"; } } class Dog implements Animal { public function run(){ echo "I'm running fast
"; } public function say(){ echo "I am Dog class
"; } } abstract class Factory{ abstract static function createAnimal(); } class CatFactory extends Factory { public static function createAnimal() { return new Cat(); } } class DogFactory extends Factory { public static function createAnimal() { return new Dog(); } } $cat = CatFactory::createAnimal(); $cat->say(); $cat->run(); $dog = DogFactory::createAnimal(); $dog->say(); $dog->run();

  工廠方法模式是簡單工廠模式的進(jìn)一步抽象和推廣。由于使用了面向?qū)ο蟮亩鄳B(tài)性,工廠方法模式保持了簡單工廠模式的優(yōu)點(diǎn),而且克服了它的缺點(diǎn)。在工廠方法模式中,核心的工廠類不再負(fù)責(zé)所有產(chǎn)品的創(chuàng)建,而是將具體創(chuàng)建工作交給子類去做。

這個核心類僅僅負(fù)責(zé)給出具體工廠必須實(shí)現(xiàn)的接口,而不負(fù)責(zé)產(chǎn)品類被實(shí)例化這種細(xì)節(jié),這使得工廠方法模式可以允許系統(tǒng)在不修改工廠角色的情況下引進(jìn)新產(chǎn)品。


新聞標(biāo)題:php工廠方法模式的好處是什么
地址分享:http://m.5511xx.com/article/cochhgg.html