본문 바로가기

프로그래밍 강의 메모/코딩으로 학습하는 GoF의 디자인 패턴_백기선

객체 생성과 관련 디자인 패턴 > 프로토타입 패턴(Prototype Pattern)

https://inf.run/6Shr

 

코딩으로 학습하는 GoF의 디자인 패턴 - 인프런 | 강의

디자인 패턴을 알고 있다면 스프링 뿐 아니라 여러 다양한 기술 및 프로그래밍 언어도 보다 쉽게 학습할 수 있습니다. 또한, 보다 유연하고 재사용성이 뛰어난 객체 지향 소프트웨어를 개발할

www.inflearn.com

 

 

프로토타입 패턴

  • 객체 생성 관련 디자인 패턴.
  • 기존 인스턴스를 복제하여 새로운 인스턴스를 만드는 방법.
  • 복제 기능을 갖추고 있는 기존 인스턴스를 프로토타입으로 사용해 새 인스턴스를 만들 수 있다.

 

 

 

Basic implementation



Prototype registry implementation

 

 

 

프로토타입 패턴의 장점

1. 복잡한 객체를 만드는 과정을 숨길 수 있다.

2. 기존 객체를 복제하는 과정이 새 인스턴스를 만드는 것보다 비용 즉 시간 또는 메모리면에서 효율적일 수도 있다.

3. 추상적인 타입을 리턴할 수 있다.

 

프로토타입 패턴의 단점

복잡한 객체를 만드는 과정 자체가 복잡할 수 있다.

특히, 순환 참조가 있는 경우.

 

 

 

 

 

 

https://refactoring.guru/ko/design-patterns/prototype

 

Prototype

/ Design Patterns / Creational Patterns Prototype Also known as: Clone Intent Prototype is a creational design pattern that lets you copy existing objects without making your code dependent on their classes. Problem Say you have an object, and you want to

refactoring.guru