객체 지향 언어가 나오면서 효율적이고 생산적인 소프트웨어 개발을 위해 디자인 패턴이 나올 수 있었다. 디자인 패턴은 소프트웨어 개발 과정에서 빈번하게 발생하는 공통적인 문제 해결 방법을 형태별, 행위별 동작 패턴을 정의해 놓은 것으로, 소프트웨어 개발 과정에서 발생하는 구조적 문제를 효율적으로 해결하고 그로 인해 생산성을 증대시킬 수 있다.
Table of Contents
패턴 분류 #
범주별 분류 #
-
생성 관련 패턴 : 객체 인스턴스 생성을 위한 패턴
-
행동 관련 패턴 : 클래스와 객체들이 상호작용하는 방법 및 역할 분담 방법을 정의한 패턴
-
구조 관련 패턴 : 클래스 및 객체 구조화 관련 패턴
클래스와 객체에 의한 분류 #
-
클래스 패턴 : 클래스 상속 관련 패턴, 컴파일 단계에서 관계 결정
- 어댑터 패턴
- 인터프리터 패턴
- 템플릿 메소드 패턴
- 팩토리 메소드 패턴
-
객체 패턴 : 객체 사이의 관계를 다룬 패턴, 실행 중에 관계 결정