問題一覧
1
일반적인 원형을 만들어 놓고, 복사하여 필요한 부분만 수정해 객체 생성 (생성패턴)
Prototype
2
기존에 구현되어있는 클래스에 필요한 기능 추가, 상속의 대안, 기능을 동적으로 유연하게 확장 (구조)
Decorator
3
한 객체의 상태가 바뀌면 다른 객체들에게 연락이가 자동으로 갱신 (행위)
Observer
4
일부분을 서브클래스로 캡슐화, 상위 클래스는 기능골격 제공, 하위 클래스는 세부 처리 구체화 (행위)
Templete Method
5
구체적인 클래스에 의존하지 않고, 서로 연관되거나 의존적인 객체 조합을 만드는 인터페이스 제공 (생성)
Abstract Factory
6
실체 객체를 드러나지 않게하여 정보은닉의 역할 수행 (구조)
Proxy
7
한 요청을 2개 이상의 객체에서 처리 (행위)
Chain of Responsibility
8
기존 클래스 재사용을 위해 중간에서 맞춰주는 역할을 하는 인터페이스 생성 (구조)
Adapter
9
복잡한 시스템에 대하여 단순한 인터페이스 제공 (구조)
Facade
10
컬렉션 구현방법을 노출시키지 않고 반복자를 사용하여 접근 가능 (행위)
Iterator
11
전역변수를 사용하지않고 객체를 하나만 생성, 생성된 객체 어디서든지 참조 가능 (생성)
Singleton
12
객체들의 관계를 트리구조로 구성, 복합객체와 단일객체 동일하게 취급 (구조)
Composite
13
느슨한 결합을 해치지 않기위해 중재자를 두고 모든 것을 요구하여 통신의 빈도 수를 줄임(행위)
Mediator
14
요구사항을 객체로 캡슐화, 명령이 들어오면 그에 맞는 서브클래스 선택 실행 (행위)
Command
15
기능의 클래스 계층, 구현의 클래스 계층 연결하고 구현부에서 추상 계층 분리 (구조)
Bridge
16
행위를 클래스로 캡슐화해 동적으로 행위를 자유롭게 바꿀 수 있게 함(행위)
Strategy
17
객체 상태 캡슐화하여 클래스화, 상태에따라 다르게 처리 가능 (행위)
State
18
데이터 구조로부터 처리기능 분리해 별도의 클래스 생성, 메서드가 각 클래스를 돌아다니며 작업 수행 (행위)
Visitor
19
다수의 객체 모두가 갖는 본질적인 요소 클래스화, 클래스 경량화 (구조)
Flyweight
20
객체 생성 방법과 구현 방법을 분리 복잡한 객체 생성 (생성패턴)
Builder
21
상위클래스에 객체 생성 인터패이스 정의, 하위 클래스에 인스턴스 생성 (생성패턴)
Factory Method
22
구문 해석을 맡는 클래스를 각각 작성하여 여러 언어 해석 가능 (행위)
Interpreter
23
객체를 복구해야하는 경우 Undo 요청 가능
Memento