Iterator - 처리를 반복한다.
Adaptor - 사이에 끼워 재사용한다.
Template Method - 하위 클래스에서 구체적으로 처리한다.
Factory Method - 하위 클래스에서 인스턴스를 만든다.
Singleton - 인스턴스를 단 하나만 만든다.
Prototype - 복사해서 인스턴스를 만든다.
Builder - 복잡한 인스턴스를 조립한다.
Abstract Factory - 관련 부품을 조합하여 제품을 만든다.
Bridge - 기능 계층과 구현 계층을 나눈다.
Strategy - 알고리즘을 모두 바꾼다.
Composite - 그릇과 내용물을 동일시한다.
Decorator - 장식틀과 내용물을 동일시한다.
Visitor - 데이터 구조를 돌아다니면서 처리한다.
Chain of Responsibility - 책임을 떠넘긴다.
Facade - 단순한 창구를 만든다.
Mediator - 중재자를 통해 처리한다.
Observer - 상태 변화를 알려준다.
Memento - 상태를 저장한다.
State - 상태를 클래스로 표현한다.