[1.3 디자인 패턴 기술하기]
설계를 재사용하기 좋게 만들려면 설계를 하기까지의 다양한 결정, 대안, 장단점 등을 고려한 과정도 함께 적어주어야 합니다.
-패턴 이름과 분류(Pattern Name and Classification)
-의도(Intent)
-다른 이름(Also Known As)
-동기(Motivation) : 설계 문제를 제시하고, 패턴 안에서 클래스나 객체 구조가 어떻게 문제를 해결하는지 설명해 주는 일종의 시나리오
-활용성(Applicability)
-구조(Structure) : 객체 모델링 기법(Object Modeling Technique: OMT)에 기반을 둔 표기법을 이용하여 해당 패턴에서 쓰는 클래스들을 시각적으로 나타냅니다. 또한, 객체 사이에 오가는 요청과 협력 관계의 순차를 표현하기 위해서 상호작용 다이어그램도 이용
-참여자(Participant) : 주어진 패턴을 구성하고 책임을 수행하는 클래스나 객체들을 설명
-협력 방법(Collaboration) : 참여자들이 작업을 수행하기 위한 참여자들 간의 협력 관계를 정의
-결과(Consequence) : 이 패턴을 이용한 결과는 무엇이고 장단점은?
-구현(Implementation) : 패턴을 구현할 때 주의해야 할 함정, 힌트, 기법은?
-예제 코드(Sample Code)
-잘 알려진 사용예(Known Use)
-관련 패턴(Related Pattern)
[1.4 디자인 패턴 카탈로그]
-추상 팩토리(Abstraction Factory)
-적응자(Adapter)
-가교(Bridge)
-빌더(Builder)
-책임 연쇄(Chain of Responsibility)
-명령(Command)
-복합체(Composite)
-장식자(Decorator)
-퍼사드(Facade)
-팩토리 메서드(Factory Method)
-플라이급(Flyweight)
-해석자(Interpreter)
-반복자(Iterator)
-중재자(Mediator)
-메멘토(Memento)
-감시자(Observer)
-원형(Prototype)
-프록시(Proxy)
-단일체(Singleton)
-상태(State)
-전략(Strategy)
-템플릿 메서드(Template Method)
-방문자(Visitor)
댓글