2022/04/14 2

퍼사드(FACADE) 패턴이란?

1. 퍼사드 패턴이란? 의도 한 서브시스템 내의 인터페이스 집합에 대한 획일화된 하나의 인터페이스를 제공하는 패턴. 서브시스템을 사용하기 쉽도록 상위 수준의 인터페이스를 정의 즉, 복잡한 서브 시스템 의존성을 최소화하는 방법이다. 사실 이게 보면 뭔가... 굉장히 익숙하면서도 크게 어렵지도 않다. 많은 영상과 정보를 찾는 동안에도 모두가 별로 이야기할게 없다고 하긴 했다. 사용 시기 복잡한 서브시스템에 대한 단순한 인터페이스 제공이 필요할 때 추상 개념에 대한 구현 클래스와 사용자 사ㅏ이에 너무 많은 종속성이 존재할 때 서브시스템을 계층화 시킬 때 구조 Facade : 단순하고 일관된 통합 인터페이스를 제공. 서브시스템을 구성하는 어떤 클래스가 어떤 요청을 처리해야 하는지 알고 있으며, 사용자의 요청을 ..

데코레이터 패턴(Decorator Pattern)이란?

1. 데코레이터 패턴 의도 객체에 동적으로 새로운 책임을 추가할 수 있게 한다. 기능을 추가하려면, 서브클래스를 생성하는 것보다 용통성이 있다. 즉, 기존 코드를 변경하지 않고 부가 기능을 추가하는 패턴이다. 상속이 아닌 위임을 사용해서 보다 유연하게(런타임에) 부가 기능을 추가하는 것도 가능하다. 우리가 장식을 생각한다면 장식품을 달아주는 주체는 그 장식(데코레이터)만 추가될 뿐 주체는 여전히 동일하다. (예 : 크리스마스 트리에 장식품이 달려도 트리는 그대로임) 이것처럼 디자인 패턴에서도 이러한 느낌으로 데코레이터 패턴을 고안한게 아닌가 생각이 든다. (내 뇌피셜) 사용 시기 동적으로 또한 투명하게(transparent), 다시 말해 다른 객체에 영향을 주지 않고 개개의 객체에 새로운 책임을 추가하기..