Computer Science
[CS] GoF 디자인패턴의 종류. (Design Pattern)
2021. 10. 5. 08:07반응형
이번 글은, GoF 디자인패턴의 종류들에 대해서 알아보겠습니다.
디자인패턴은 소프트웨어를 설계할 때, 역사적으로 발생했던 공통된 문제들에 대해서, 표준적인 해결 방법을 제안들을 모아놓은 것입니다. GoF (Gang of Four)는 이 분야의 사인방을 뜻하는 용어로, 이 디자인패턴을 쓴, 다음의 4명의 사람들을 의미합니다. 에리히 감마(Erich Gamma), 리처드 헬름(Richard Helm), 랄프 존슨(Ralph Johnson), 존 블리시데스(John Vlissides)가 썼습니다. (위키백과 참고)
아래의 표를 참고해주시면 좋을 것 같습니다. (클릭하시면, 해당 디자인패턴의 상세페이지로 넘어갑니다.)
GoF 패턴의 종류들 (Category of GoF Patterns)
목적 (Purpose) | ||||
객체 생성을 다른 클래스, 혹은 다른 객체가 대신해줌. (Defer Object creation to another class or object) |
객들을 조립하는 방법에 대해 설명함. (Describe ways to assemble objects) |
객체의 책임을 분리하거나, 상호작용 방법에 대해 설명함. (Address problems of assigning responsibilities) |
||
Creational (생성) | Structural (구조) | Behavioral (행동) | ||
Scope | Class | Factory Method (팩토리 메서드) | Adapter (어댑터) | Interpreter (인터프리터) Template (템플릿) |
Object | Abstract Factory (추상팩토리) Builder (빌더) Prototype (프로토타입) Singleton (싱글톤) |
Adapter (어댑터) Bridge (브리지) Composite (컴포지트) Decorator (데코레이터) Facade (퍼사이드) Flyweight (플라이웨이트) Proxy (프록시) |
CoR (Chain of Responsibility) (역할 사슬 패턴) Command (커맨드) Iterator (반복자) Mediator (중재자) Memento (메멘토) Observer (옵저버) State (상태) Strategy (전략) Visitor (방문자) |
* 아키텍쳐 패턴은 디자인 패턴보다 상위수준임.
* 아키텍쳐 패턴은 전체 시스템의 구조를 설계하기 위한 참조 모델이면, 디자인 패턴은 서브 시스템에 속하는 컴포넌트 끼리 관계를 설계하기 위한 참조모델이다.
참고자료
반응형
'Computer Science' 카테고리의 다른 글
[소프트웨어 요구사항] 품질속성 간 상충관계 (Trade off 관계) (0) | 2022.02.06 |
---|