더북(TheBook)

예제 2

추상 팩토리 패턴[54] 은 객체의 가족을 만드는 생성 패턴이다. 그림 3.9는 패턴의 해법 구조를 보여 준다. 이 패턴이 정의한 추상 팩토리는 자신이 생성한 객체를 삭제하는 책임을 명확하게 포함하지 않는다. 가비지 컬렉션을 지원하는 언어에서는 삭제 책임이 필요하지 않다. 반면, 실제 프로젝트에서는 추상 팩토리 패턴을 올바르게 사용했지만 추상 팩토리 패턴에서 명시적으로 다루지 않았기에 설계자들이 객체 삭제를 간과한 사례가 많았다. 따라서 그림 3.9에 제시한 팩토리 클래스를 있는 그대로 사용했다면 설계는 불완전한 추상화 악취를 드러낼 것이다.

 

▲ 그림 3.9 추상 팩토리 패턴을 위한 클래스 다이어그램[54]

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.