패스잇
CS 기초 · 기초

팩토리 메서드(Factory Method) 패턴은 언제 사용하며, 이 패턴을 적용했을 때 얻을 수 있는 장점은 무엇인가요?

힌트 · 객체 생성 로직을 서브클래스에 위임하여 결합도를 낮추고, 새로운 객체 타입 추가 시 기존 코드를 수정하지 않도록 합니다. OCP를 준수하는 데 도움이 됩니다.

객체 생성결합도 감소유연성확장성OCP (개방-폐쇄 원칙)

모범답안

팩토리 메서드 패턴은 객체 생성 로직을 직접 수행하는 대신, 서브클래스에서 객체 생성을 담당하도록 위임할 때 사용합니다.

이 패턴을 적용하면 객체 생성과 사용 코드가 분리되어 결합도가 낮아집니다. 따라서 새로운 객체 타입을 추가하더라도 기존 코드를 수정할 필요 없이, 새로운 서브클래스만 추가하면 됩니다. 이는 OCP(개방-폐쇄 원칙)를 준수하는 데 도움이 됩니다.

예를 들어, 다양한 데이터베이스 연결 객체를 생성해야 할 때, 각 데이터베이스 종류에 따라 팩토리 메서드를 구현한 서브클래스를 만들 수 있습니다. 이렇게 하면 데이터베이스 종류가 추가되어도 기존 코드를 변경하지 않고 확장할 수 있습니다.

읽었다면, 이제 직접 답해볼 차례예요

패스잇 앱에서 이 질문에 말로 답하면 AI가 꼬리질문까지 이어가며 1:1 코칭합니다.

함께 보는 디자인 패턴 면접 질문

← 디자인 패턴 면접 질문 전체 보기