패턴에 대한 이름을 부여함으로써 다른 개발자들과 그 패턴에 대해서 토론하는 것이 가능해진다. 패턴을 정리하고 이를 카탈로그로서 관리하여 용이하게 적용할 수 있도록 할 수있다. 패턴 카탈로그에는 패턴의 용도와 패턴이 만들어지게된 배경, 적용될 수 있는 범위, 해결책의 디자인 및 그 해결책을 적용한 결과(장단점)와 같이 훨씬 다양한 내용이 자세히 기술 된다.
대부분의 카탈로그에서는 몇가지 범주에 맞춰서 디자인 패턴을 분류해 놓고 있다. 그 중하나가 용도에따라서 생성, 행동, 구조라는 세가지 범주로 나누는 방법이다.
생성관련 패턴(Creational Pattern)
객체 인스턴스 생서을 위한 패턴으로, 클라이언트와 그 클라이언트에서 생성해야할 인스턴스 사이의 연결을 끊어주는 패턴이다.
è 싱글턴, 팩토리, 빌던, 추상팩토리,프로토 타입, 빌더
행동관련 패턴(Behavioral Pattern)
클래스와 객체들이 상호작용하는 방법 및 역할을 분담하는 방법과 관련된 패턴
è 템플릿 메소드, 커맨드, 이터레이터, 스테이트, 옵저버, 스트래티지, 인터프리터, 역할변경, 비지터, 미디에이터, 메멘토
구조관련 패턴(Structural Pattern)
클래스 및 객체들을 구성을 통해서 더 큰 구조로 만들 수 있게 해 주는 것과 관련된 패턴
è 데코레이터, 프록시, 컴포지트, 어댑터, 플라이웨이트, 브리지
'Java Design Pattern' 카테고리의 다른 글
State 패턴 (0) | 2013.02.22 |
---|---|
Iterator 패턴 & Composite 패턴 (0) | 2013.02.21 |
Template Method 패턴 (0) | 2013.02.20 |
Factory 패턴 (0) | 2013.02.20 |
Decorator 패턴 (0) | 2013.02.20 |