공부하기싫어

직접 푼거라 답이 틀릴수도있음

 

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