[모던 C++로 다시 쓰는 GoF 디자인 패턴 총정리 #4] 추상 팩토리(Abstract Factory) 패턴: 계층적 상속에서 Concepts와 조합 가능한 팩토리로
이전 글에서는 팩토리 메서드(Factory Method) 패턴을 살펴보며, 가상 함수 기반의 고전적 구현을 어떻게 모던 C++20 이상의 기능(Concepts, std::expected, std::variant, std::optional, std::format)으로 개선할 수 있는지 논했습니다. 이번에는 추상 팩토리(Abstract Factory) 패턴으로 한 걸음 더 나아갑니다.추상 팩토리는 "연관되거나 의존적인 객체 패밀리를 생성하는 인터페이스"를 제공하는 패턴입니다. 즉, 서로 관련 있는 여러 종류의 객체를 일관성 있게 생성할 수 있는 팩토리를 추상화하는 것입니다. 전통적인 C++ 구현에서는 인터페이스 클래스를 상속받아 구체 팩토리를 제공했고, 다양한 제품 계열(class family)을 다룰 때 ..