내용
- 객체 인스턴스 생성에 관여, 클래스 정의와 객체 생성 방식을 구조화, 캡슐화를 수행하는 패턴입니다.
종류
Builder
내용
- 복잡한 인스턴스를 조립하여 만드는 구조로, 복합 객체를 생성할 때 객체를 생성하는 방법(과정)과 객체를 구현(표현)하는 방법을 분리함으로써 동일한 생성 절차에서 서로 다른 표현 결과를 만들 수 있는 디자인 패턴
- 생성과 표기를 분리해서 복잡한 객체를 생성
Example
연관 페이지
참고 문헌 / 사이트
원본 링크
Prototype
내용
- 처음부터 일반적인 원형을 만들어 놓고, 그것을 복사한 후 필요한 부분만 수정하여 사용하는 패턴
- 생성할 객체의 원형을 제공하는 인스턴스에서 생성할 객체들의 타입이 결정되도록 설정하며 객체를 생성할 때 갖추어야 할 기본 형태가 있을 때 사용되는 디자인 패턴
- 기존 객체를 복사함으로써 객체를 생성한다.
연관 페이지
참고 문헌 / 사이트
원본 링크
Factory Method
내용
- 상위 클래스에서 객체를 생성하는 인터페이스를 정의하고. 하위 클래스에서 인스턴스를 생성하도록 하는 방식
- 상위 클래스에서는 인스턴스를 만드는 방법만 결정하고, 하위 클래스에서 그 데이터의 생성을 책임지고 조작하는 함수들을 오버라이딩하여 인터페이스와 실제 객체를 생성하는 클래스를 분리할 수 있는 특 성을 갖는 디자인 패턴
- 생성할 객체의 클래스를 국한하지 않고 객체를 생성
연관 페이지
참고 문헌 / 사이트
원본 링크
Abstract Factory
내용
- 구체적인 클래스에 의존하지 않고 서로 연관되거나 의존적인 객체들의 조합을 만드는 인터페이스를 제공하는 패턴입니다.
- Abstract Factory를 통해 생성된 클래스에서는 사용자에게 인터페이스(AP)를 제공하고, 구체적인 구현은 Concrete Product 클래스 에서 이루어지는 특징을 갖는 디자인 패턴
- 동일한 주제의 다른 팩토리를 묶음
연관 페이지
참고 문헌 / 사이트
원본 링크
Singleton (싱글톤)
내용
- 전역 변수를 사용하지 않고 객체를 하나만 생성하도록 하며, 생성된 객체를 어디에서든지 참조할 수 있도록 하는 디자인 패턴
- 한 클래스에 한 객체만 존재하도록 제한
연관 페이지
참고 문헌 / 사이트
원본 링크
연관 페이지
참고 문헌 / 사이트