본문 바로가기

카테고리 없음

Factory Method Pattern

반응형

1. Factory Method Pattern이 무엇인가?

Factory란 이름처럼 객체를 만들어 내는 패턴

한마디로, 객체의 생성과 관련된 패턴 


=>객체를 만들어내는 부분을 서브클래스에 위임하는 패턴 


2.예제 


<structure>


Robot(abstract class) //두종류의 로봇 

-super Robot

-power Robot


RobotFactory(abstract class) //두종류의 로봇공장 

-SuperRobotFactory

-modifiedsuperrobotfactory



http://jdm.kr/blog/180 <- 참고 블로그


3.사용하는이유?

1)클래스간의 결합도를 낮추게 해준다.

2)직접 객체를 생성해 사용하는것을 방지하여 서브클래스에 위임함으로써 보다 효율적인 코드제어를 할수있다.

3)클래스간의 의존성 제거 


4.장점

1).객체생성후 공통으로 할일을 수행 

2).생성되는 객체의 구체적인 타입을 감춘다.

-factory method 패턴은 구조상 생성된 객체의 타입을 구체적인 타입이 아닌 추상타입으로 리턴 한다.

이를 통해서 객체를 사용하는 측에서 구체적인 타입의 존재조차 모르도록 할수있다.

3).구체적인 factory클래스가 생성할 객체를 결정하도록한다.

-구체생성 메소드 내부에서 필요한 동작을 자유자재로 구현할수있다.

 특히 인자를 받거나 상태에 따라서 생성할 객체를 바꿀수있다. 이렇게하면 좀더다양한 기능을 수행하거나 수정에 용이한 구조를 만들어낼수있다.

반응형