17. 소프트웨어 설계에서 자주 발생하는 문제에 대한 일반적이고 반복적인 해결 방법을 무엇이라고 하는가?
① 모듈 분해 ❷ 디자인 패턴
③ 연관 관계 ④ 클래스 도출
✅ 정답: ② 디자인 패턴 (Design Pattern)
📚 해설
디자인 패턴이란?
소프트웨어 설계 시, 자주 등장하는 문제 상황에 대한 검증된 해결 방법을 정리한 템플릿 또는 모범 사례입니다.
개발자들이 설계 시 참고할 수 있는 재사용 가능한 설계 지침이라고 생각하면 됩니다.
- 즉, "이런 상황에서는 이렇게 해결하는 게 좋다"라는 베스트 프랙티스 모음집입니다.
- **GoF(Gang of Four)**가 정리한 23가지 디자인 패턴이 대표적입니다.
📌 보기 해설
① 모듈 분해
- 프로그램을 독립적이고 관리하기 쉬운 모듈 단위로 나누는 기법입니다.
- 설계 원칙 중 하나이지만, 반복적 문제 해결 방법이라는 의미와는 다소 거리가 있습니다. ❌ 오답
② 디자인 패턴
- 특정 상황에서 검증된 해결 방법을 정리한 템플릿입니다.
- 객체지향 설계에서 반복적으로 발생하는 문제를 해결하기 위한 정형화된 방법입니다. ✅ 정답
③ 연관 관계
- 클래스들 사이의 관계 유형 중 하나로, 하나의 클래스가 다른 클래스의 객체를 참조하는 관계입니다.
- 단순한 관계 개념일 뿐, 반복적 문제 해결을 위한 구체적 방법은 아닙니다. ❌ 오답
④ 클래스 도출
- 요구사항 분석 단계에서 시스템이 필요로 하는 클래스를 식별하고 정의하는 활동입니다.
- 특정 문제를 해결하는 패턴과는 다른 개념입니다. ❌ 오답
📦 디자인 패턴의 분류 (GoF 기준)
분류 설명 대표 패턴
생성 패턴 | 객체 생성 방법 제공 | 팩토리 메서드, 추상 팩토리, 빌더, 프로토타입, 싱글톤 |
구조 패턴 | 클래스/객체 구성 방법 | 어댑터, 브리지, 컴퍼지트, 데코레이터, 퍼사드, 플라이웨이트, 프록시 |
행위 패턴 | 객체 간 협력 방법 | 옵서버, 전략, 상태, 템플릿 메서드, 커맨드 등 |
📢 한 줄 정리
디자인 패턴 = 설계 문제 해결 공식집
반응형
'기출문제 > 정보처리기사' 카테고리의 다른 글
2022년 1회 정보처리기사 기출문제 19번 (0) | 2025.03.03 |
---|---|
2022년 1회 정보처리기사 기출문제 18번 (0) | 2025.03.03 |
2022년 1회 정보처리기사 기출문제 16번 (0) | 2025.03.03 |
2022년 1회 정보처리기사 기출문제 15번 (0) | 2025.03.03 |
2022년 1회 정보처리기사 기출문제 14번 (0) | 2025.03.03 |