직접 푼거라 답이 틀릴수도있음
1. 디자인 패턴 사용의 장점과 단점에 대한 설명으로 거리가 먼 것은?
① 소프트웨어 구조 파악이 용이하다
② 객체지향 설계 및 구현의 생산성을 높이는데 적합하다
③ 재사용을 위한 개발 시간이 단축된다
④ 절차형 언어와 함께 이용될 대 효율이 극대화 된다.
답 : 4
설명 : 디자인패턴은 객체지향 설계/구현 위주이다.
2. GoF (Gang of Four) 디자인 패턴 분류에 해당하지 않는 것은?
① 생성 패턴
② 구조 패턴
③ 행위 패턴
④ 추상 패턴
답 : 4
설명 : GoF 패턴은 행위패턴11개 구조패턴 7개 생성패턴 5개로 총 23개의 3분류이다.
3. 다음 내용이 설명하는 디자인 패턴은?
[ - 객체를 생성하기 위한 인터페이스를 정의하며 어떤 클래스가 인스턴스화될 것인지는 서브 클래스가 결정하도록 하는 것
- Virtual-Constructor 패턴이라고도 함 ]
① visitor 패턴
② observer 패턴
③ factory method 패턴
④ bridge 패턴
답 : 3
설명 : factory method 패턴
- 상위 클래스에서 객체를 생성하는 인터페이스를 정의하고, 하위 클래스에서 인스턴스를 생성하도록 하는 방식
- 1단계 : 객체 생성을 담당하는 factory 클래스를 만들어 그곳에서 객체를 생성
- 2단계 : 객체를 생성할 수 있는 매서드를 만들어 그 매서드가 factory 클래스 역할을 하도록 함 factory 클래스는 삭제
4. 객체지향 소프트웨어 설계 시 디자인 패턴을 구성하는 요소로 가장 거리가 먼 것은?
① 개발자 이름
② 문제 및 배경
③ 사례
④ 샘플 코드
답 : 1
설명 : ㅇㅇ
5. 디자인 패턴 중에서 행위적 패턴에 속하지 않는 것은?
① command 패턴
② observer 패턴
③ prototype 패턴
④ state 패턴
답 : 3
설명 : prototype 패턴은 생성패턴중 하나이다.
6. 그림과 같이 관찰 대상의 데이터(A~D)에 변화가 발생하면 이 변화를 탐지해 여러 가지 방식으로 사용자에게 디스플레이하는 프로그램을 작성하고자 한다. 이 프로그램에 적용할 수 있는 디자인 패턴은?
① decorator 패턴
② flyweight 패턴
③ mediator 패턴
④ observer 패턴
답 : 4
설명 : 그렇다네요
7. GoF 의 디자인 패턴에서 행위 패턴에 속하는 것은?
① builder
② vsitor
③ prototype
④ bridge
답 : 2
설명 : 그렇다네요
8. 차량 내비게이션 소프트웨어에서 GPS 신호를 수신하는 경우와 수신하지 못하는 경우에 따라 차량의 위치를 구하는 다른 알고리즘을 선택할 때 가장 적합한 설계 패턴은?
① decorater 패턴
② adapter 패턴
③ composite 패턴
④ strategy 패턴
답 : 4
설명 : strategy 패턴
- 알고리즘을 사용하는 곳과, 알고리즘을 제공하는 곳을 분리시킨 구조로 알고리즘을 동적으로 교체 가능
- 자주 바뀌는 기능 : 매서드를 클래스로 바꾸고 <<interface>> 타입의 별도 상속 구조로 대처
9. 다음 클래스 다이어그램으로 표현한 설계에서 사용한 디자인 패턴은?
① adapter 패턴
② observer 패턴
③ composite 패턴
④ factory method 패턴
답 : 3
설명 : 그렇다네요
10. 보기1의 디자인 패턴 분류와 보기2의 디자인 패턴을 바르게 연결한 것은?
보기1 ㄱ-생성패턴 ㄴ-구조패턴 ㄷ-행위패턴
보기2 a-bridge패턴 b-singleton패턴 c-interpreter패턴
ㄱㄴㄷ
① a b c
② b a c
③ b c a
④ c a b
답 : 2
설명 : 그렇다네요
11. 그림과 같이 서브시스템 사이의 의사소통 및 종속성을 최소화 하기 위해 단순화된 하나의 인터페이스를 제공하는 디자인 패턴은?
① adapter 패턴
② bridge 패턴
③ decorater 패턴
④ facade 패턴
답 : 4
설명 : 그렇다네요
12. 다음에서 설명하는 디자인 패턴에 해당하는 것은?
[ 이미 만들어져 있는 클래스를 사용하고 싶지만 인터페이스가 원하는 방식과 일치하지 않을 때 또는 관련성이 없거나 예측하지 못한 클래스와 협동하는 재사용 가능한 클래스를 생성하기 원할 때 사용한다 ]
① bridge 패턴
② adapter 패턴
③ composite 패턴
④ facade 패턴
답 : 2
설명 : adapter 패턴
- 기존 클래스를 재사용할 수 있도록 중간에서 맞춰주는 역할
- 호환성이 없는 기존 클래스의 인터페이스를 변환해 재사용할 수 있도록 해준다.
13. 디자인 패턴에 대한 설명으로 옳지 않은 것은?
① observere 패턴 : 어떤 객체의 상태가 변할 때 그 객체에 의존성을 가진 다른 객체들이 그 변화를 통지받고 자동으로 갱신될 수 있게 만든다.
② mediator 패턴 : 객체의 상호작용을 캡슐화하는 객체를 정의한다.
③ composite 패턴 : 객체의 상호작용을 캡슐화하는 객체를 정의한다.
④ bridge 패턴 : 구현에서 추상을 분리해 이들이 독립적으로 다양성을 가질 수 있도록 한다.
답 : ㅁ?ㄹ
설명 :
14. 다음 설명에 해당하는 소프트웨어 설계 패턴은?
[ 일 대 다의 객체 의존 관계를 정의하여 한 객체의 상태가 변화되었을때 의존관계에 있는 다른 객체에게 자동으로 변화를 통지한다 ]
① observer 패턴
② factory method 패턴
③ decorator 패턴
④ strategy 패턴
답 : 1
설명 : 그렇다네요
15. 다음 중 성격이 다른 설계 패턴은?
① bridge 패턴
② factory method 패턴
③ prototype 패턴
④ singleton 패턴
답 : 1
설명 : 2 3 4 는 생성패턴분류이고 1번은 구조패턴 분류이다.
이후 주관식은 귀찮아서 안할래
'IT etc > 소프트웨어공학' 카테고리의 다른 글
C10. 품질 연습문제 (0) | 2022.06.14 |
---|---|
C9. 테스트 연습문제 (0) | 2022.06.14 |
C8. 구현 연습문제 (0) | 2022.06.13 |
C6. 아키텍처 설계와 클래스 설계 연습문제 (6) | 2022.06.12 |