디자인 패턴은 객체 지향 프로그래밍 설계를 할 때 자주 발생하는 문제들을 해결하기 위해 사용되는 패턴이다. 디자인 패턴은 크게 객체를 만드는 절차를 추상화하는 생성 패턴, 작은 구조를 합성하여 더 큰 구조를 만들기 위한 구조 패턴, 객체 간의 커뮤니케이션과 알고리즘, 책임 분배를 다루는 행동 패턴 3가지로 나눠 지게 된다.
디자인 패턴은 실제 개발자들 사이에 알음알음 존재해왔고 정리되지 않은 채로 수없이 많은 패턴들이 있었지만 1994년 GOF(Gangs Of Four)에 의해 23개의 패턴으로 정리된다.
생성 패턴은 인스턴스를 만드는 절차를 추상화하는 패턴으로서 객체를 생성•합성하는 방법이나 객체의 표현 방법과 시스템을 분리하게 만든다.
여기에 해당되는 패턴으로는
등 이 있다.
작은 구조를 합성하여 더 큰 구조를 만들기 위해 사용하는 패턴이다.
여기에 해당되는 패턴으로는
등 이 있다.
객체 간의 커뮤니케이션과 알고리즘, 책임 분배와 관련된 패턴이다.
여기에 해당되는 패턴으로는
등 이 있다.
에릭 감마•리처드 헬름•랄프 존스•존 블리시다스, 『GoF의 디자인 패턴』, 프로텍 미디어(2015)