일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- touchdesigner displace
- 터치디자이너 timeline
- 터치디자이너 파이썬
- 터치디자이너 클론
- displace
- touchdesinger
- 파이썬 if
- touchdesigner GPU
- 터치디자이너 함수
- particleGPU
- TDableton
- 터치디자이너 인터페이스
- TouchDesigner
- 터치디자이너 interface
- 터치디자이너 튜토리얼
- ableton live 10
- 터치디자이너 reference
- 파이썬reference
- 터치디자이너 python
- 터치디자이너 오퍼레이터
- touchdesigner particle
- 터치디자이너
- 터치디자이너 강의
- 파이썬
- 터치디자이너 if
- 터치디자이너 Instancing
- 터치디자이너 에이블톤
- 터치디자이너 list
- 터치디자이너 참조
- 터치디자이너 replicator
- Today
- Total
caLAB
[개발] 쉽게 배워 바로 써먹는 디자인 패턴 02 - 팩토리 메서드 패턴(Factory Method Pattern), 싱글톤(Singleton) 패턴 본문
[개발] 쉽게 배워 바로 써먹는 디자인 패턴 02 - 팩토리 메서드 패턴(Factory Method Pattern), 싱글톤(Singleton) 패턴
도이(doi) 2022. 4. 14. 18:41팩토리 메서드 패턴
팩토리 패턴에 추가 기능을 구현하는데 팩토리 메서드 패턴을 사용할 수 있다.
각 각의 다른 기능이 있는 팩토리에서 객체를 만듦. 그리고 각 각 다른 팩토리를 관리하는 인터페이스로써의 팩토리가 존재한다. 객체 생성 파트가 상속되어 있으면 팩토리 메서드 패턴을 사용했다고 생각하면 됨.
구조화를 통해 선언부와 실현 구현부를 분리. 팩토리 메서드는 프레임 워크와 같은 응용 프로그램에서 많이 이용하는 패턴 중 하나. 팩토리 메서드 패턴을 이용하면 응용 프로그램에 클래스가 종속되지 않도록 관리할 수 있음. 그 이유는 객체의 생성 과정을 캡슐화 하고 이를 분리하여 관리할 수 있기 때문.
추상화 팩토리 패턴
Matrix 관계(표)를 가진 class 오브젝트를 생성할 때 유리함.
각 각의 테마를 가진 여러가지 오브젝트들을 하나의 팩토리에서 만들고자 할 때
이러한 오브젝트들을 만들어내는 팩토리 자체를 추상화 함으로써 오브젝트를 쉽게 생성
추상 팩토리 패턴은 팩토리 메서드 패턴을 포함하며 팩토리 부분을 추상화해 그룹으로 확장.
생성된 그룹을 통해 전체를 쉽게 변경 가능.
추상 팩토리는 객체 생성 과정이 프로세스 공정과 유사. 같은 방식으로 생성할 때 적용하면 좋음.
팩토리 method pattern과의 차이점
팩토리 method pattern은 일반적인 class 정의안에 상속이 가능한 factory method만 추가시킨것이라고 생각하시면됩니다. abstract factory pattern은 factory 의 목적을 가진 class를 추상화 시킨것이구요. 디자인패턴이 그러하듯이 이것들을 명확히 나누는 것은 의미가 없습니다. 이러한 디자인 패턴이 있구나 정도만 기억하시다가, 필요한 요구사항에 맞춰서 적절히 섞어서 써도 상관없습니다.
팩토리 메서드와 유사하지만 관리할 그룹이 많다는 차이가 있음.
추상 팩토리 구조 코드
[참고 영상]
https://www.youtube.com/watch?v=ejXUhFKcbIU&list=PLDV-cCQnUlIYcAmW4j27i8aYPbja9HePm&index=4
https://www.youtube.com/watch?v=XTgCYtQAQ4c&list=PLDV-cCQnUlIYcAmW4j27i8aYPbja9HePm&index=4
'개발 공부 > 컴퓨터 과학' 카테고리의 다른 글
[개발] 쉽게 배워 바로 써먹는 디자인 패턴 04 - SOLID (0) | 2022.04.19 |
---|---|
[개발] 쉽게 배워 바로 써먹는 디자인 패턴 03 - 빌더(builder) 패턴, 프로토타입(Prototype) 패턴 (0) | 2022.04.15 |
[개발 공부 자료]개발자를 위한 공부 자료 모음 (0) | 2022.02.22 |
[운영체제 9주차] 하루 30분 컴퓨터 과학 공부하기 (0) | 2021.11.02 |
[운영체제 8주차] 하루 30분 컴퓨터 과학 공부하기 (0) | 2021.10.19 |