問題:
在實際應用中,我們可能封裝了很多類,但是這些類只是乙個業務的各個步驟,如果讓客戶端乙個乙個去呼叫這些介面,是非常繁瑣的一件事。我們應該簡化客戶端的操作。
解決方案:
我們可以設計乙個類:這個類組合了所有的必須的類,然後在乙個方法中呼叫所有的實現,並把這個類提供給客戶端,這就是facade
模式(外觀)
源**:
//this a programme about facade
#include
using namespace std;
class subsystem1
~subsystem1(){}
void operator()
~subsystem2(){}
void operator()
~facade(){}
sub1->operator();
sub2->operator();
private:
subsystem1 *sub1;
subsystem2 *sub2;
void main()
facade *facade=new facade;
設計模式之Facade 外觀
facade 的定義 為子系統中的一組介面提供乙個一致的介面。facade 乙個典型應用就是資料庫 jdbc 的應用 如下例對資料庫的操作 public class dbcompare catch ception e finally 上例是 jsp 中最通常的對資料庫操作辦法。在應用中 經常需要對資...
設計模式之Facade 外觀
為子系統中的一組介面提供乙個一致的介面,此模式定義了乙個高層介面,這個介面使得這一子系統更加容易使用。何時使用外觀模式?這要分三個階段來說,首先,在設計初期階段,應該要有意識的將不同的兩個層分離,比如經典的三層構架,就需要考慮在資料訪問層和業務邏輯層,業務邏輯層和表示層的層與層之間建立外觀fa ad...
設計模式之Facade 外觀
facade的定義 為子系統中的一組介面提供乙個一致的介面。facade乙個典型應用就是資料庫jdbc的應用,如下例對資料庫的操作 public class dbcompare catch ception e finally 上例是jsp中最通常的對資料庫操作辦法。在應用中,經常需要對資料庫操作,每...