반응형
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클래스가 생성할 객체를 결정하도록한다.
-구체생성 메소드 내부에서 필요한 동작을 자유자재로 구현할수있다.
특히 인자를 받거나 상태에 따라서 생성할 객체를 바꿀수있다. 이렇게하면 좀더다양한 기능을 수행하거나 수정에 용이한 구조를 만들어낼수있다.
반응형