모름

조금 쉽게 팩토리 매서드 패턴을 설명해보겠습니다. 가능하면 이전 글인 심플 팩토리 패턴을 읽고 오면 좋겠습니다. (링크)

 

먼저! 패턴의 이름에 대해 나름대로 이해해보고 넘어가겠습니다. 이 부분은 제 생각으로 정리한거라 틀릴 수도 있습니다. 다만 어찌됐든 배우기에 앞서 용어에 대한 이해는 꼭 하고 넘어가는게 좋습니다. 코딩할때 변수명을 이해하고 작성해야하는것처럼요.

 

 

팩토리 매서드 패턴 유니티로 한번에 보기

 

심플 팩토리 패턴
팩토리 메서드 패턴

 

두 이미지의 차이를 찾아보세요

 

위 두 이미지를 비교하시면 팩토리 매서드 패턴이 뭔지 알 수 있습니다. 심플 팩토리에선 공장 하나가 하나의 완성품, 하나의 클래스로 있었습니다. 단지 생산로직을 심플하게 공장이라는 이름으로 분리시킨것 뿐이었죠. 

 

아래 이미지를 보시면 위 심플 팩토리 패턴에서 더 나아가 공장을 추상화해서 활용합니다. 이게 팩토리 메서드 패턴입니다. 공장의 생산로직을 추상화된 공장 클래스에서 미리 작성하여 공장의 생산로직을 분리시키는 것입니다.

 

 

 

팩토리 매서드 패턴이라는 이름 자체에 대한 이해

 

심플 팩토리 패턴은 객체를 생성하는 로직부분을 따로 분리하는 패턴이었습니다. 말그대로 '심플팩토리' 를 분리하는 패턴이었습니다.

 

그렇다면 팩토리 매서드 패턴은 무엇을 의미할까요? 말 그대로 팩토리 매서드를 분리하는 패턴입니다. 팩토리 매서드는 직역하면 공장 방법입니다. 즉, 공장이 가동되는 방식 자체를 분리하는 것이 팩토리 매서드 패턴입니다!