반응형
GoF의 디자인 패턴은 목적에 따라 크게 세가지로 분류를 나눌 수 있다.
생성 패턴, 구조 패턴, 행동 패턴 세가지로 나뉘며 먼저 생성 패턴에 대해서 공부를 진행해보려 한다.
생성 패턴에는 다음과 같이 5가지 패턴들이 있다.
- Abstract Factory
- Builder
- Factory Method
- Prototype
- Singleton
생성 패턴은 인스턴스를 생성할 때 유연성 있는 방법들을 제공해준다. 객체지향에서 유연성이 있다라는 말은 SOLID 원칙을 잘 따르는 구조라고 생각하면 될 것 같다.
GoF의 디자인패턴에서 명시 되어있는 생성 패턴의 특징을 보면
- 생성 패턴은 시스템이 어떤 구체 클래스를 사용하는 지에 대한 정보를 캡슐화.
- 생성 패턴은 이들 클래스의 인스턴스들이 어떻게 만들고 어떻게 서로 맞붙는지에 대한 부분을 완전히 가려줌.
즉, 생성 패턴으로 구현 된 코드를(혹은 라이브러리) 사용하는 사용자 입장에서는 그 객체들이 어떻게 생성 되는지 신경쓸 필요 없고 객체 생성 방법에 있어서 코드상 수정이 일어나게 되더라도 프로그램 전체 구조상 거의 영향을 미치지 않는다. 단순히 객체 생성을 요청해서 적절한 메소드(함수)를 사용만 하면 된다.
반응형
'Design Patterns > Creational Patterns' 카테고리의 다른 글
Singleton Pattern (C++) (0) | 2019.09.28 |
---|---|
Prototype Pattern (C++) (0) | 2019.09.13 |
Builder Pattern (C++) (0) | 2019.08.24 |
Factory Method Pattern (C++) (0) | 2019.02.06 |
Abstract Factory Pattern (C++) (0) | 2018.11.17 |