Design Pattern
[Design Pattern]4. Factory Pattern
akawarren
2012. 7. 2. 10:14
# 정확하게는 디자인 패턴이라고 말할 수 없음. 디자인 패턴이라기 보다 관용구에 가까움.
# 팩토리를 쓰면 객체 생성 과정을 캡슐화 할 수 있다.
# static factory를 쓰는 경우 객체 생성 과정을 위한 팩토리의 인스턴스를 만들지 않아도 되는 장점이 있지만, 서브클래스를 만들어 객체 생성 메소드의 동작을 변경시킬 수 없는 단점이 있다.
# 모든 팩토리 패턴에서는 어플리케이션의 구상 클래스에 대한 의존성을 줄여줌으로서 느슨한 결합을 도와준다.
# 팩토리 메소드 패턴에서는 객체를 생성하기 위한 인터페이스를 정의하는데, 어떤 클래스의 인스턴스를 만들지는 서브클래스에서 결정하게 만든다.
# Dependency Inversion Principle :
# 원칙에 대한 가이드라인 :
- 어떤 변수에도 구상 클래스에 대한 레퍼런스를 저장하지 말아라
- 구상 클래스에서 유도된 클래스를 만들지 않는다
- 베이스 클래스에 구현되어 있던 메소드를 오버라이드 하지 않는다.
# 추상 팩토리 패턴 : 인터페이스를 시용하여 서로 연관된, 또는 의존하는 객체를 구상 클래스를 지정하지 않고도 생성할 수 있다.
#