
동적으로 객체를 추가 할때
윈도우창에서 창이 길어지면 없던 스크롤바가 생기듯이
어떤 오브젝트에 그다음 어떤 오브젝트를 추가 연결 하고 싶은 경우 데코레이터 패턴을 쓸 수 있다
그다음 오브젝트를 추가 하기 위해 기존에 로딩해 놓고 있는 것이 아닌
그 즉시 생성해서 연결해 주는 것이다
( 미리 로딩해놓고 연결해 놓고 스위치로 온오프 하는 것이 아님 )
이때 데코레이터의 역할음 기존에 존재 하던 것에 추가로 포장할것에 대한 포인터를 가지고 있다는 것이다
[추가된 것C] --->[추가된 것B] --->[추가된 것A] ---> 베이직객체
과 같은 것
데코레이터를 통해서 다음 추가된 오브젝트로 이동한다
전체 다 실행 시키려면 reculsive 하게 실행 할 수 있다
주의 : 데코레이터 패턴 자체가 베이직 객체와 추가되는것들과의 구분을 하지 않고 동일하게 사용(동일한 구조 or 함수) 하고 싶은 것인데
혀재 노드가 베이직 객체 이냐 또는 B 객체이냐를 따져서 사용하게 하면 데코레이터 패턴에 위배 된다,
이런 상황이라면 뭔가 다른 패턴을 찾아 봐야 할지도 모른다)
반응형
'디자인패턴과방법론 > 디자인패턴' 카테고리의 다른 글
flyweight 패턴 (0) | 2012.11.02 |
---|---|
Facade 패턴 (0) | 2012.11.02 |
composite 패턴 (0) | 2012.11.02 |
Bridge 패턴 (0) | 2012.11.02 |
adapter 패턴 (0) | 2012.11.02 |