Swift/Design_Pattern
[Swift 디자인 패턴] Creational Pattern (생성 패턴) - 디자인 패턴 공부 1.5
Dev_Pingu
2021. 5. 6. 23:50
반응형
안녕하세요 Pingu입니다.🐧
지난 글에 이어 이번 글에서도 디자인 패턴에 대해 공부해보도록 하겠습니다~!
지난 글에서 디자인 패턴에는 크게 Creational, Structural, Behavioral 패턴이 있다고 했는데요, Creational Pattern(생성 패턴)에 속하는 여러 가지 패턴들을 알아보기 전에 생성 패턴이 뭔지부터 살펴보려고 합니다.
Creational Pattern (생성 패턴) 이란?
생성 패턴은 객체가 인스턴스화 되는 과정을 추상화합니다. 객체가 구성, 생성되고 표현되는 방식에 관계없이 시스템을 독립적으로 만드는데 도움이 됩니다.
생성 패턴에는 크게 두 종류가 있습니다.
- 클래스 생성 패턴
- 인스턴스로 만들 클래스를 다양하게 만들기 위한 용도로 상속을 사용
- 객체 생성 패턴
- 인스턴스화 작업을 다른 객체가 하도록 떠넘김
시스템이 점점 클래스 상속보다는 객체 구성에 더 많이 의존하게 되면서 생성 패턴이 중요해졌는데요, 생성 패턴에는 반복적으로 등장하는 특징이 존재합니다.
- 생성 패턴은 시스템이 사용하는 클래스에 대한 내용을 캡슐화합니다.
- 생성 패턴은 캡슐화한 클래스의 인스턴스가 생성되고 결합되는 방식을 숨깁니다.
이러한 생성 패턴을 사용하게 되면 어떤 객체가 생성되고, 누가 객체를 생성하고 객체가 어떻게 생성되는지, 객체를 언제 생성할 것인지를 자유롭게 정할 수 있습니다.
생성 패턴에는 아래와 같은 패턴들이 존재합니다.
이들은 서로 보완되는 부분도 있기 때문에 어떤 것을 사용할지를 고민해야 합니다.
이를 잘 결정하기 위해서는 어떤 상황에 어떤 생성 패턴을 사용할지를 잘 알아야겠죠?
그럼 다음 글부터 생성 패턴에 해당하는 디자인 패턴을 하나씩 알아보며 생성 패턴을 공부해보겠습니다! 😆
감사합니다.
반응형