정보처리기사 실기소프트웨어 설계디자인 패턴 식별난이도 3SHORT_ANSWER

정보처리기사 실기 디자인 패턴 식별 기출문제 #3150

문제

다음 시나리오에서 적용된 GoF 디자인 패턴을 식별하시오.

Java
public abstract class DocumentProcessor { protected abstract FileParser createParser(); public void processDocument(String filePath) { FileParser parser = createParser(); Document doc = parser.parse(filePath); doc.validate(); doc.save(); } } public class XMLProcessor extends DocumentProcessor { protected FileParser createParser() { return new XMLParser(); } } public class JSONProcessor extends DocumentProcessor { protected FileParser createParser() { return new JSONParser(); } }

위 코드에서 DocumentProcessor는 문서 처리 흐름을 정의하지만, 구체적인 파서 생성은 서브클래스에 위임한다. 이때 createParser() 메소드가 구현하는 생성 패턴은 무엇인가?

정답

팩토리 메소드 패턴

팩토리 메소드 패턴팩토리 메서드 패턴Factory Method Pattern팩토리 메소드팩토리 메서드

해설

이 코드는 팩토리 메소드 패턴의 전형적인 구현이다. 추상 클래스 DocumentProcessor에서 createParser()라는 추상 메소드를 정의하고, 구체적인 객체 생성은 XMLProcessor, JSONProcessor 같은 서브클래스에서 담당한다. 상위 클래스는 객체 생성 인터페이스만 제공하고, 실제 어떤 구체 클래스의 인스턴스를 생성할지는 서브클래스가 결정하는 구조로, 객체 생성 로직을 캡슐화하면서도 확장성을 제공한다.

이런 문제 20~50개를 한 번에 풀어보세요

매번 새로 추가되는 모의고사 + 오답 자동 복습 + 회차별 실력 추적. 회원가입 후 무료 이용.

[정보처리기사 실기] 디자인 패턴 식별 소프트웨어 설계 기출 #3150 | sqldpass