1. 정의
- 디자인 패턴이란 프로그램을 설계할 때 발생했던 문제점들을 객체 간의 상호 관계 등을 이용하여 해결할 수 있도록 하나의 '규약'형태로 만들어 놓은 것.
- 라이브러리, 프레임워크를 만드는 데 기초적인 원리가 된다.
2. 대분류
- 생성패턴
- 객체 생성 방법이 들어간 디자인패턴
- 싱글톤, 팩토리, 추상팩토리, 빌더, 프로토타입 패턴이 있다.
- 구조패턴
- 객체, 클래스 등으로 큰 구조를 만들 때 유연하고 효율적으로 만드는 방법
- 프록시, 어댑터, 브리지, 복합체, 데코레이터, 퍼사드, 플라이웨이트 패턴이 있다.
- 행동패턴
- 객체나 클래스 간의 알고리즘, 책임 할당에 관한 패턴.
- 이터레이터, 옵저버, 전략, 책임연쇄, 커맨드, 중재자, 메멘토, 상태, 템플릿메서드, 비지터 패턴이 있다.
출처
CS 지식의 정석 | 디자인패턴 네트워크 운영체제 데이터베이스 자료구조 - 큰돌