GML Test (2019-10-03)
기술노트
GML Test (2019-10-03)
---
1. OOP 특징에 대해 잘못 설명한 것은?
> 1. OOP는 유지 보수성, 재사용성, 확장성이라는 장점이 있다. > 2. 캡슐화는 정보 은닉을 통해 높은 결합도와 낮은 응집도를 갖도록 한다. > 3. 캡슐화는 만일의 상황(타인이 외부에서 조작)을 대비해서 외부에서 특정 속성이나 메서드를 시용자가 사용할 수 없도록 숨겨놓은 것이다. > 4. 다형성은 부모클레스에서 물려받은 가상 함수를 자식 클래스 내에서 오버라이딩 되어 사용되는 것이다. > 5. 객체는 소프트웨어 세계에 구현할 대상이고, 이를 구현하기 위한 설계도가 클래스이며, 이 설계도에 따라 소프트웨어 세계에 구현된 실체가 인스턴스다.
2. 라이브러리와 프레임워크에 대해 잘못 설명하고 있는 것은?
> 1. 택환브이 : 프레임워크는 전체적인 흐름을 스스로가 쥐고 있으며 사용자는 그 안에서 필요한 코드를 짜 넣는 것이야! > 2. 규렐로 : 프레임워크에는 분명한 제어의 역전 개념이 적용되어 있어야돼! > 3. 이기문지기 : 객체를 프레임워크에 주입하는 것을 Dependency Injection이라고 해! > 4. 규석기시대 : 라이브러리는 톱, 망치, 삽 같은 연장이라고 생각할 수 있어! > 5. 라이언 : 프레임워크는 프로그래밍할 규칙 없이 사용자가 정의한대로 개발할 수 있는 장점이 있어!
3. 운영체제의 운영 기법 중 동시에 프로그램을 수행할 수 있는 CPU를 두 개 이상 두고 각각 그 업무를 분담하여 처리할 수 있는 방식을 의미하는 것은?
> 1. Multi-Processing System > 2. Time-Sharing System > 3. Real-Time System > 4. Multi-Programming System > 5. Batch Prcessing System
4. http에 대한 설명으로 틀린 것은?
> 1. http는 웹상에서 클라이언트와 웹서버간 통신을 위한 프로토콜 중 하나이다. > 2. http/1.1은 동시 전송이 가능하지만, 요청과 응답이 순차적으로 이루어진다. > 3. http/2.0은 헤더 압축으로 http/1.1보다 빠르다 > 4. http/2.0은 한 커넥션으로 동시에 여러 메시지를 주고 받을 수 있다. > 5. http/1.1은 기본적으로 Connection 당 하나의 요청을 처리하도록 설계되어있다.
5. 쿠키와 세션에 대해 잘못 설명한 것은?
> 1. 쿠키는 사용자가 따로 요청하지 않아도 브라우저가 Request시에 Request Header를 넣어서 자동으로 서버에 전송한다. > 2. 세션은 쿠키를 사용한다. > 3. 동접자 수가 많은 웹 사이트인 경우 세션을 사용하면 성능 향상에 큰 도움이 된다. > > 4. 보안 면에서는 쿠키보다 세션이 더 우수하며, 요청 속도를 쿠키가 세션보다 빠르다. > 5. 세션은 쿠키와 달리 서버 측에서 관리한다.
6. RISC와 CISC에 대해 잘못 설명한 것은?
> 1. CPU에서 수행하는 동작 대부분이 몇개의 명령어 만으로 가능하다는 사실에 기반하여 구현한 것으로 고정된 길이의 명령어를 사용하는 것은 RISC이다. > 2. 두 방식 중 소프트웨어의 비중이 더 큰 것을 RISC이다. > 3. RISC는 프로그램을 구성할 때 상대적으로 많은 명령어가 필요하다. > 4. 모든 고급언어 문장들에 대해 각각 기계 명령어가 대응 되도록 하는 것은 CISC이다. > 5. 두 방식 중 전력소모가 크고, 가격이 비싼 것은 RISC이다.
7. Database에서 Join에 대해 잘못 설명한 것은?
> 1. A와 B테이블을 INNER Join하면 두 테이블이 모두 가지고 있는 데이터만 검색된다. > 2. A와 B테이블이 서로 겹치지 않는 데이터가 4개 있을때, LEFT OUTER Join을 하면 결과값에 NULL은 4개 존재한다. > 3. A LEFT JOIN B 와 B RIGHT JOIN A는 완전히 같은 식이다. > 4. A 테이블의 개수가 6개, B 테이블의 개수가 4개일때, Cross Join을 하면, 결과의 개수는 24개이다. > 5. 셀프 조인은 조인 연산 보다 중첩 질의가 더욱 빠르기 때문에 잘 사용하지 않는다.
8. 멀티프로세스 환경에서 CPU가 어떤 하나의 프로세스를 실행하고 있는 상태에서 인터럽트 요청에 의해 다음 우선 순위의 프로세스가 실행되어야 할 때, 기존의 프로세스의 상태 또는 레지스터 값을 저장하고 CPU가 다음 프로세스를 수행하도록 새로운 프로세스의 상태 또는 레지스터 값을 교체하는 작업을 무엇이라고 할까? ( )
9. Database의 INDEX에 대해 잘못 설명한 것은?
> 1. 키 값을 기초로 하여 테이블에서 검색과 정렬 속도를 향상시킨다. > 2. 여러 필드로 이루어진 인덱스를 사용한다고해서 첫 필드 값이 같은 레코드를 구분할 수 있진 않다. > 3. 테이블의 기본키는 자동으로 인덱스가 된다. > 4. 필드 중에는 데이터 형식 때문에 인덱스 될 수 없는 필드가 존재할 수 있다. > 5. 인덱스 된 필드에서 데이터를 업데이트하거나, 레코드를 추가 또는 삭제할 때 성능이 떨어진다.
10. 커널 레벨 스레드에 대해 잘못 설명한 것은?
> 1. 프로세스의 스레드들을 몇몇 프로세서에 한꺼번에 디스패치 할 수 있기 때문에 멀티프로세서 환경에서 매우 빠르게 동작한다. > 2. 다른 스레드가 입출력 작업이 다 끝날 때까지 다른 스레드를 사용해 다른 작업을 진행할 수 없다. > 3. 커널이 각 스레드를 개별적으로 관리할 수 있다. > 4. 커널이 직접 스레드를 제공해주기 때문에 안정성과 다양한 기능이 제공된다. > 5. 프로그래머 요청에 따라 스레드를 생성하고 스케줄링하는 주체가 커널이면 커널 레벨 스레드라고 한다.
- 정답은 맨 밑에 있습니다.
1. 2 2. 5 3. 1 4. 2 5. 3 6. 5 7. 5 8. Context Switching 9. 2 10. 2