프로그래밍 일반/디자인 패턴

퍼사드 패턴(Façade Pattern)

지노윈 2020. 1. 28. 22:54
반응형

Façade는 프랑스어로 "출입구가 있는 건물의 앞부분을 의미합니다"

즉, 복잡한 부분은 뒤로 숨기고 간략화된 인터페이스를 제공하는 패턴입니다.

 

퍼사드 디자인 패턴은 하나 이상의 복잡한 서브 시스템 앞에 단순한 인터페이스를 두기 위한 방법입니다.

퍼사드는 편리하고 직관적인 API를 통해 이용할 수 있게합니다.

 

class Engine
{
public:
    void Start() 
    { 
    	...
    }
};

class Headlights
{
public:
    void TurnOn() 
    { 
    	...
    }
};

//  facade
class Car
{
public:
    void Start()
    {
        headlights.TurnOn();
        engine.Start();
    }
    
private:
    Engine engine;
    Headlights headlights;
};

int main(int argc, char *argv[])
{
    Car car;
    car.Start();

    return 0;
}