場景:假設積分兌換物品流程,一共有三部分別依賴三個子系統1.積分校驗系統,檢視是否有資格。
2.積分支付系統,兌換禮物,扣減積分等。
3.物流系統,兌換禮物後,進行配送流程。
/**
* 禮物實體類
*/public
class
pointsgift
public string getname()
public
void
setname
(string name)
}/**
* 支付子系統
*/public
class
pointspaymentservice
}/**
* 積分校驗子系統
*/public
class
qualifyservice
}/**
* 物流子系統
*/public
class
shippingservice
}/**
* 扣減積分門面類
*/public
class
giftexchangeservice
//// public void setpointspaymentservice(pointspaymentservice pointspaymentservice)
//// public void setshippingservice(shippingservice shippingservice)
public
void giftexchange (pointsgift pointsgift)}}
}
/**
* 客戶端與測試類
*/public
class
test
}
校驗連衣裙積分資格通過,庫存通過
支付:連衣裙 積分成功!
連衣裙進入物流系統
物流訂單號:666
外觀模式和單例模式
外觀模式和抽象工廠模式
門面模式
:
PHP設計模式之外觀(門面)模式
外觀模式 只是為乙個分層或子系統建立乙個單一的入口。外觀類,它需要了解所有的子系統的方法或屬性,進行組合,以備外界呼叫 class facade function methoda function methodb function methodn facade new facade facade m...
Go Facade外觀(門面)設計模式
動機 motivation 上述a方案的問題在於元件的客戶和元件中各種複雜的子系統有了過多的耦合,隨著外部客戶程式和各子系統的演化,這種過多的耦合面臨很多變化的挑戰。如何簡化外部客戶程式和系統間的互動介面?如何將外部客戶程式的演化和內部子系統的變化之間的依賴相互解耦?模式定義 為子系統中的一組介面提...
大話設計模式之外觀模式(門面模式)
外觀模式 為子系統中的一組介面提供乙個一致的介面,此模式定義了乙個高層介面,這個介面使得這一子系統更加容易使用。人如其名,我們一看外觀設計模式 門面設計模式 uml圖就能立刻領會到該設計模式的用處。我們在做開發的設計初期階段,應該有意識的將不同的兩個層分離,比如經典的三層架構,就需要考慮在資料訪問層...