팩토리 패턴

    프로그래밍 Design Pattern 이해하기 - 4 팩토리 패턴

    팩토리 패턴 이번 시간엔 팩토리 패턴에 대해 알아보자. 이 한줄을 보자. MallardDuck을 Concreate Class라고 부른다. (abstract class를 상속받아 구체화된 객체를 Concreate class라고 부른다!) 위와같이 abstract class를 상속받아 서브클래싱을 하면, new MallardDuck();처럼. 이렇게 되면, runtime 도중에 Duck을 바꿀 수가 없게 된다. 쉽게 예를 들면 아래와 같이, 매번 상태에 따라 Duck을 바꿀 때 객체를 만들어야 하며, 수없이 많은 조건들이 생겨나게 된다! 이런 코드들이 많아지면, 앱을 유지보수하는데 굉장히 어려워지며 또한 잘못고쳤을 때 독립성이 유지되지 않아 에러가 많이 일어나게 된다. "new"의 잘못된 점은 무엇일까? 기..