研究計畫 介紹下PHP設計模式中的裝飾器模式

2021-10-04 13:54:47 字數 693 閱讀 4203

在現有的乙個物件中,為其新增功能,同時又不會改變它原有物件上的結構,就是對他原有的基礎上進行修飾,這種就叫做修飾器模式,相當於不改原來的類的基礎上,再重寫這個類

乙個類提供了一項功能,如果我們要在類中新增修改其他功能,我們通常採用繼承的方法。建立乙個子類繼承這個類,重新實現類的方法。在物件導向的設計中,而我們也應該盡量使用物件組合,而不是物件繼承來擴充套件和復用功能。裝飾器模式就是基於物件組合的方式,可以實現最大的靈活性。

特點:父類是給你乙個普通文章內容,兩個子類是負責裝飾,但是它消耗的資源還是有點大,日常工作中,如果實在迫不得已去擴充套件乙個類,才推薦使用

<?php

// 裝飾器做文章修飾功能

// 父類是給你乙個普通文章內容

// 兩個子類是負責裝飾

class baseart

public function decorator()

}class bianart extends baseart

public function decorator()

}class seoart extends baseart

public function decorator()

}$b = new seoart(new bianart(new baseart('天天向上')));

echo $b->decorator();

介紹php設計模式中的工廠模式

問題 你如何能輕鬆方便地建立這麼 複雜 n程式設計客棧bsp 的物件即操作中不需要貼上複製呢?解決方法 建立乙個工廠 乙個函式或乙個類方法 來製造新的物件。為了理解工廠的用處,試想以下的不同之處 複製 如下 connection new mysqlconnection user,password,d...

PHP中的設計模式

單例模式 instance必須宣告為靜態的私有變數 建構函式和析構函式必須宣告為私有,防止外部程式new 類從而失去單例模式的意義 getinstance 方法必須設定為公有的,必須呼叫此方法 以返回例項的乙個引用 操作符只能訪問靜態變數和靜態函式 new物件都會消耗記憶體 使用場景 最常用的地方是...

php中的設計模式 裝飾模式

裝飾模式 所謂裝飾模式就是讓程式一層一層的包下來,像是大口袋套小口袋。例 php view plain copy class 食物 function getcost 被裝飾者類 class 公尺飯 extends 食物 裝飾者類與被裝飾者繼承自同乙個基類 class 菜 extends 食物 細分的...