'디자인 패턴! 이렇게 활용한다' 를 읽고...
6장. 복제를 통한 객체 생성 문제
프로토타입 패턴이 유용한 경우:
* 객체를 생성하는 방식이나 객체의 구성 형태,
표현 방식 등과는 무관하게 객체를 생성하고 싶을 때 프로토타입 패턴이 유용하다.
* 생성할 객체가 실행시간에 결정될 경우 유용하다.
* 추상 팩토리 패턴이나 팩토리 메서드 패턴의 경우에는 생성할 객체의 클래스 종류만큼
객체를 생성해 주는 클래스를 따로 정의해야 했었다. 그러나 프로토타입 패턴을 적용할 경우에는
이러한 별도의 객체 생성 클래스들이 불필요하다.
따라서 프로토타입 패턴은 생성될 객체의 클래스 구조와 병행해서
객체 생성을 위한 클래스들을 정의하고 싶지 않을 때 유용하다.
* 어떤 클래스의 객체들이 몇 개 안되는 상태들 중 하나에 머무르는 형태일 경우 프로토타입 패턴을 사용하면
미리 각 상태별로 객체를 만들어두고, 필요할 경우 원하는 상태의 객체를 복제해서 사용할 수 있어 유용하다.
느낀점:
프로토타입 패턴 역시 생성패턴으로써,
시스템 프로그래밍을 하는 나에게는 어울리지 않는 옷이라고 해야할지..
객체를 계속해서 만들어야 하는 일 따위는 일어나지 않는 현실 -_-;
예제코드:
이번에는 예제코드 생략.
Clone() 메서드로 Self 복사를 수행한다는 정도만 기억해 두자.
프로토타입 패턴이 유용한 경우:
* 객체를 생성하는 방식이나 객체의 구성 형태,
표현 방식 등과는 무관하게 객체를 생성하고 싶을 때 프로토타입 패턴이 유용하다.
* 생성할 객체가 실행시간에 결정될 경우 유용하다.
* 추상 팩토리 패턴이나 팩토리 메서드 패턴의 경우에는 생성할 객체의 클래스 종류만큼
객체를 생성해 주는 클래스를 따로 정의해야 했었다. 그러나 프로토타입 패턴을 적용할 경우에는
이러한 별도의 객체 생성 클래스들이 불필요하다.
따라서 프로토타입 패턴은 생성될 객체의 클래스 구조와 병행해서
객체 생성을 위한 클래스들을 정의하고 싶지 않을 때 유용하다.
* 어떤 클래스의 객체들이 몇 개 안되는 상태들 중 하나에 머무르는 형태일 경우 프로토타입 패턴을 사용하면
미리 각 상태별로 객체를 만들어두고, 필요할 경우 원하는 상태의 객체를 복제해서 사용할 수 있어 유용하다.
느낀점:
프로토타입 패턴 역시 생성패턴으로써,
시스템 프로그래밍을 하는 나에게는 어울리지 않는 옷이라고 해야할지..
객체를 계속해서 만들어야 하는 일 따위는 일어나지 않는 현실 -_-;
예제코드:
이번에는 예제코드 생략.
Clone() 메서드로 Self 복사를 수행한다는 정도만 기억해 두자.