[DesignPattern] 디자인 패턴의 분류
디자인 패턴의 분류
많은 디자인 패턴을 크게 범주별로 분리를 할 수 있다.
범주별로 분리를 해보면서 패턴의 특징을 쉽게 파악할 수 있다.
1. 생성, 행동, 구조 관련 패턴으로 분류
- 생성 관련 패턴 (Creational Pattern) : 객체 인스턴스 생성을 위한 패턴으로, 클라이언트와 그 클라이언트에서 생성해야 할 객체 인스턴스 사이의 연결을 끊어주는 패턴
싱글턴, 팩토리 메소드, 추상 팩토리, 프로토타입, 빌더 패턴
- 행동 관련 패턴 (Behavioral Pattern) : 클래스와 객체들이 상호작용하는 방법 및 역할을 분담하는 방법과 관련된 패턴
스트래티지, 옵저버, 스테이트, 커맨드, 이터레이터, 템플릿 메소드, 인터프리터, 미디에이터, 역할 변경, 메멘토, 비지터
- 구조 관련 패턴 (Structural Pattern) : 클래스 및 객체들을 구성을 통해서 더 큰 구조로 만들 수 있게 해 주는 것과 관련된 패턴
데코레이터, 어댑터, 컴포지트, 퍼사드, 프록시, 브리지, 플라이웨이트
2. 클래스, 객체 패턴으로 분류
- 클래스 패턴 (Class Pattern) : 클래스 사이의 관계가 상속을 통해서 어떤 식으로 정의되는지를 다룬다. 클래스 패턴은 컴파일시에 관계가 결정된다.
템플릿 메소드, 팩토리 메소드, 어댑터, 인터프리터
- 객체 패턴 (Object Patterns) : 객체 사이의 관계를 다루며, 객체 사이의 관계는 보통 구성을 통해서 정의된다. 객체 패턴에서는 일반적으로 실행 중에 관계가 생성되기 때문에 더 동적이고 유연하다.
스트래티지, 옵저버, 데코레이터, 프록시, 컴포지트, 이터레이터, 스테이트, 추상 팩토리, 싱글턴, 비지터, 메멘토, 역할 사슬, 브리지, 미디에이터, 플라이웨이트, 프로토타입, 빌더
출처: https://devbox.tistory.com/entry/DesignPattern-디자인-패턴의-분류?category=574551 [장인개발자를 꿈꾸는 :: 기록하는 공간]
'JAVA > Design Patterns' 카테고리의 다른 글
[DesignPattern] 팩토리 메서드 패턴 (0) | 2020.07.06 |
---|---|
[DesignPattern] 템플릿 메서드 패턴 (0) | 2020.07.06 |
[DesignPattern] 프록시 패턴 (0) | 2020.07.06 |
[DesignPattern] 싱글턴 패턴 (0) | 2020.07.06 |
[DesignPattern] 객체지향 모델링 (0) | 2020.07.06 |
옵저버 패턴(Observer Pattern) (3/3) - Observer 패턴 변경 확장 (0) | 2019.07.30 |
옵저버 패턴(Observer Pattern) (2/3) - Observer 패턴 직접 구현 (0) | 2019.07.30 |
옵저버 패턴(Observer Pattern)(1/3) - java.util.Observable (0) | 2019.07.30 |