본문 바로가기

Design Patterns

Facade Pattern ① 개요

336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.
퍼사드 패턴.. 완죤 멋있죠? 이름이 멋있다는 겁니다 -_-;; 아직 퍼사드가 뭐하는 놈인지 몰라효... 그래서 퍼사드를 일단 배워야죠... -_- 뭐라는거니..;;; 아무튼.. 어댑터 패턴을 배우면서 생각했습니다.. 일단 뭐 어댑터 패턴이 어떤 인터페이스를 다른 인터페이스에 맞도록 하는 어댑터 클래스를 하나 생성하는 방식입니다. 그럼.. 좀 다른 방법을 강구를 해보면.. 해당 인터페이스보다 더 큰 상위 개념의 인터페이스를 작성하는 것도 하나의 방법인것 같습니다.

그래서 나온 퍼사드 패턴을.. 인터넷에서 쭉 돌아다니다 보니까.. 이런 얘기를 하더라고요...

퍼사드 패턴이 적용된 매쏘드를 읽고 있으면 마치 batch file(*.bat)을 읽고 있는 느낌입니다.  90년대 초반 DOS게임들은 bat파일로 시작하는 게임들이 꽤 있었죠.

"어떤 exe를 실행하고 어떤 파일을 열고, cdrom 드라이버는 어떻게 띄우고, 환경변수는 어떻게 맞추고 등등해야 어떤 게임이 뜬다."

는 복잡하고 알고 싶지도 않은 물밑작업(영어로는 under the hood라고 표현하더군요.  자동차 뚜껑아래라는 뜻)을 덮어버리고, 클라이언트에게 쉽게 접근할 수 있도록 도와주는 것...


출처 : Smlltalk의 객체 마을


퍼사드에 개념에 대해서 전혀 생각 못하고 있었는데.. -ㅅ- ㅋㅋㅋㅋㅋ 아.. 너무 연상이 잘되게 패치 파일이라는 얘기를 하니까 무릎 팍! 치면서 무슨 소린지 이해가 가더라구요.. ㅋㅋ 어렵게 생각을 했습니다. 뭔가를 감쌀 수 있는 상위 개념의 인터페이스를 작성한다.. 라고 생각했었는데.. 그것보다는.. 일종의 물밑 작업 ㅋㅋ 실제로 클라이언트는 결과를 얻고 싶어하지 그 과정과정은 별로 알고 싶지 않기 때문에 캡슐화를 시켜버리는.. 그런 내용입니다.

퍼사드 패턴의 개념적인 그림은.. 아래와 같습니다.. 이제 코딩을 해보러 가야겠군용 -ㅅ- ㅋㅋ

사용자 삽입 이미지