728x90 모든 C++ 디자인 패턴 썸네일형 리스트형 [디자인패턴][구조패턴] 데코레이터 Decorator - C++ [모던 C++ 디자인 패턴] 책을 바탕으로 공부하는 내용을 정리한 내용이다. Decorator pattern 동료가 작성한 클래스 기반으로 기능 확장을 한다고 해보자. 원본 코드를 수정하지 않고 기능을 추가하기 위한 방법 중에서 상속이 생각날 수 있다. 하지만 항상 이렇게 작업할 수 있지는 않다. 상속을 할 수 없는 여러 사정이 있을 수 있다. 무엇보다 수정하는 이유가 여러 가지인 경우에는 단일 책임 원칙(SRP)을 위반하는 것이기 때문이다. Decorator 패턴은 이미 존재하는 타입에 새로운 기능을 추가하면서도 원래 타입의 코드에 수정을 피할 수 있도록 해준다. OCP를 준수하는 것이다. 시나리오 여러 개선 작업이 필요한 상황을 생각해보자. 도형을 기반으로 색상이 있는 도형과 투명한 도형을 상속받아 .. 더보기 이전 1 다음