도메인 주도 설계(DDD, Domain-Driven Design)를 공부하다 보면 "팩토리"라는 개념을 만나게 됩니다. 팩토리는 단순히 객체를 생성하는 역할을 넘어, 객체 생성 과정에서 발생하는 복잡성을 캡슐화하여 코드의 응집도를 낮추고 가독성을 높이는 설계 도구입니다. 이번 글에서는 제가 이해한 DDD에서 팩토리가 왜 필요한지, 언제 사용해야 하는지, 그리고 실제 예제를 통해 이해하기 쉽게 설명드리겠습니다.1. 팩토리는 무엇인가요?팩토리는 DDD에서 복잡한 객체 생성을 담당하는 클래스나 메서드를 의미합니다. 단순한 객체 생성은 생성자(Constructor)로 충분할 수 있지만, 다음과 같은 상황에서는 팩토리를 사용하는 것이 더 적합합니다:객체 생성 과정이 복잡하거나 외부 데이터를 참조해야 할 때생성 ..