GoF의 23가지 디자인 패턴

Iterator - 처리를 반복한다.

Adaptor - 사이에 끼워 재사용한다.

Template Method - 하위 클래스에서 구체적으로 처리한다.

Factory Method - 하위 클래스에서 인스턴스를 만든다.

Singleton - 인스턴스를 단 하나만 만든다.

Prototype - 복사해서 인스턴스를 만든다.

Builder - 복잡한 인스턴스를 조립한다.

Abstract Factory - 관련 부품을 조합하여 제품을 만든다.

Bridge - 기능 계층과 구현 계층을 나눈다.

Strategy - 알고리즘을 모두 바꾼다.

Composite - 그릇과 내용물을 동일시한다.

Decorator - 장식틀과 내용물을 동일시한다.

Visitor - 데이터 구조를 돌아다니면서 처리한다.

Chain of Responsibility - 책임을 떠넘긴다.

Facade - 단순한 창구를 만든다.

Mediator - 중재자를 통해 처리한다.

Observer - 상태 변화를 알려준다.

Memento - 상태를 저장한다.

State - 상태를 클래스로 표현한다.