11. 다음 ( ) 안에 들어갈 내용으로 옳은 것은?
❶ 협약(Contract) ② 프로토콜(Protocol)
③ 패턴(Pattern) ④ 관계(Relation)
문제 분석
이 문제는 컴포넌트 설계와 관련된 설계 원칙을 묻고 있습니다. 특히, ( )에 들어갈 내용으로 적합한 개념을 고르는 문제입니다. 문제에서는 컴포넌트 설계 시 해당 명세에서 다뤄야 할 조건들(선행조건, 결과조건, 불변조건)을 설명하고 있습니다. 이 조건들은 특정 설계 원칙에 맞추어 정의되어야 하므로, 이와 관련된 원칙을 찾는 것이 핵심입니다.
각 선택지 분석
- 협약 (Contract)
협약은 설계 명세에서 조건들을 명확히 정의하는 방법입니다. 여기서 말하는 "선행조건", "결과조건", "불변조건"은 바로 계약(Contract) 기반 설계에서 사용되는 주요 개념입니다. 계약 기반 설계에서는 컴포넌트의 오퍼레이션이 어떻게 동작해야 하는지를 명확하게 정의합니다.
→ 이 설명은 협약(Contract)에 해당합니다. - 프로토콜 (Protocol)
프로토콜은 컴포넌트 간의 상호작용 규약을 정의합니다. 프로토콜은 데이터 전송 규약이나 통신 방법을 규정하는 데 사용되며, 주로 네트워크 통신이나 서비스 간의 상호작용에 관련된 규칙을 정의합니다. 따라서 문제에서 언급된 선행조건, 결과조건, 불변조건과는 다소 다릅니다.
→ 이 설명은 프로토콜에 해당하지 않습니다. - 패턴 (Pattern)
패턴은 소프트웨어 설계에서 반복적으로 발생하는 문제를 해결하는 일반적인 해결 방법을 의미합니다. 설계 패턴은 특정 문제를 해결하기 위한 구조적 또는 행위적 접근을 제공합니다. 그러나 문제에서 설명된 "조건들"과는 직접적인 관련이 없습니다.
→ 이 설명은 패턴에 해당하지 않습니다. - 관계 (Relation)
관계는 두 개 이상의 객체나 컴포넌트 간의 상호작용을 설명하는 개념입니다. 하지만 이 개념은 문제에서 설명하는 조건들(선행조건, 결과조건, 불변조건)과는 관련이 없습니다.
→ 이 설명은 관계에 해당하지 않습니다.
결론
문제에서 설명한 조건들(선행조건, 결과조건, 불변조건)은 **협약(Contract)**에 의해 정의되는 것입니다. 따라서 정답은 ❶번입니다.
예시
- 협약(Contract) 설계 예시:
- 선행조건: 함수 호출 전에 반드시 x 값이 양수여야 한다.
- 결과조건: 함수 실행 후에는 y 값이 x보다 큰 값을 가져야 한다.
- 불변조건: 함수 실행 중에는 값 z는 변경되지 않아야 한다.
이러한 조건들은 **계약(Contract)**에 의해 명확히 정의됩니다.
요약
- **협약(Contract)**은 오퍼레이션이 실행되기 전후와 실행 중에 만족해야 하는 조건들을 명확히 정의하는 설계 원칙입니다.
- 정답은 ❶번입니다.
표로 정리
선택지 설명 맞는 선택지 여부
❶ 협약 (Contract) | 선행조건, 결과조건, 불변조건 등을 명확히 정의하는 설계 원칙 | 맞음 |
② 프로토콜 (Protocol) | 컴포넌트 간의 상호작용 규약을 정의 | 틀림 |
③ 패턴 (Pattern) | 반복적인 문제를 해결하는 일반적인 해결 방법 | 틀림 |
④ 관계 (Relation) | 객체 간의 상호작용이나 연결 상태를 설명 | 틀림 |
🎯 정답: ❶ 협약(Contract)
반응형
'기출문제 > 정보처리기사' 카테고리의 다른 글
2020년 3회 정보처리기사 기출문제 13번 (1) | 2025.04.08 |
---|---|
2020년 3회 정보처리기사 기출문제 12번 (0) | 2025.04.08 |
2020년 3회 정보처리기사 기출문제 10번 (0) | 2025.04.08 |
2020년 3회 정보처리기사 기출문제 9번 (0) | 2025.04.08 |
2020년 3회 정보처리기사 기출문제 8번 (1) | 2025.04.08 |