什麼是設計模式?
設計模式(design pattern)是一套被反覆使用、多數人知曉的、經過分類編目的、**設計經驗的總結。使用設計模式是為了可重用**、讓**更容易被他人理解、保證**可靠性。設計模式於己於他人於系統都是多贏的;設計模式使**編制真正工程化;設計模式是軟體工程的基石脈絡,如同大廈的結構一樣。
php設計模式——六大原則
1.單一職責工廠模式是我們最常用的例項化物件模式,是用工廠方法代替new操作的一種模式。2.黎克特制代換原則
3.依賴倒置原則
4.介面隔離原則
5.迪公尺特法則(最少知道原則)
6.開閉原則
使用工廠模式的好處是,如果你想要更改所例項化的類名等,則只需更改該工廠方法內容即可,不需逐一尋找**中具體例項化的地方(new處)修改了。為系統結構提供靈活的動態擴充套件機制,減少了耦合
<?php
header
('content-type:text/html;charset=utf-8');
// 簡單工廠模式(靜態工廠方法模式)
// inte***ce people 人類
inte***ce
people
// class man 繼承people的男人類
class
manimplements
people
}// class women 繼承people的女人類
class
women
implements
people
}// class ******factoty 工廠類
class
******factoty
// 簡單工廠裡的靜態方法-用於建立女人物件
static
function
createwomen()
}$man
= ******factoty:
:createman()
;$man
->
say();
//我是男人
$woman
= ******factoty:
:createwomen()
;$woman
->
say(
)//我是女人
所謂單例模式,就是確保某個類只有乙個例項,而且自行例項化並向整個系統提供這個例項,即在應用程式中只會有這個類的乙個例項存在。
單例模式有以下3個特點:
1.只能有乙個例項,必須擁有乙個建構函式,並且必須被標記為private
2.必須自行建立這個例項,擁有乙個儲存類的例項的靜態成員變數
3.必須給其他物件提供這一例項,擁有乙個訪問這個例項的公共的靜態方法
4.單例類不能再其它類中直接例項化,只能被其自身例項化
那麼為什麼要使用php單例模式?
php乙個主要應用場合就是應用程式與資料庫打交道的場景,在乙個應用中會存在大量的資料庫操作,針對資料庫控制代碼連線資料庫的行為,使用單例模式可以避免大量的new操作。因為每一次new操作都會消耗系統和記憶體的資源。
<?php
class
single
static
public
$instance
;//宣告乙個靜態變數(儲存在類中唯一的乙個例項)
static
public
function
getinstance()
public
function
setname($n
)public
function
getname()
}$oa
= single:
:getinstance()
;$ob
= single:
:getinstance()
;$oa
->
setname
('hello world');
$ob-
>
setname
('good morning');
echo
$oa-
>
getname()
;//good morning
echo
$ob-
>
getname()
;//good morning
php設計 PHP常用設計模式
1 單例模式指在整個應用中只有乙個物件例項的設計模式 class single public rand static private instance 類直接呼叫 final private function construct private防止外部new this rand mt rand 1,...
PHP設計模式 工廠設計模式
工廠模式,如其名稱一樣,就是乙個工廠,用於建立產品。使用工廠模式的好處就是請求者只需要發出請求,具體的例項化過程交給工廠模式,省去了new的過程。並且如果後期開發,類名發生變化,只需要調整工廠模式中一行new相關 不需要修改一大堆 最簡單的工廠模式,實際上就是乙個switch case結構,通過傳入...
php設計模式
php設計模式介紹 導言 php設計模式介紹 第一章 程式設計慣用法 php設計模式介紹 第二章 值物件模式 php設計模式介紹 第三章 工廠模式 php設計模式介紹 第四章 單條模式 php設計模式介紹 第五章 註冊模式 php設計模式介紹 第六章 偽物件模式 php設計模式介紹 第七章 策略模式...