1) 컴퓨터를 구성하는 구성요소를 크게 세 가지로 나누면 어떻게 되는가?
- CPU, 중앙메모리, 입출력장치
2) 프로그래밍 언어가 제공하는 기능은 위의 컴퓨터의 구성에서 어떤 부분을 이용는 것인가?
- CPU와 메모리
3) 인터페이스란 무엇인가? 프로그래밍 세계 뿐만 아니라 현실 세계에서도 통용되는 인터페이스의 의미를 설명하시오.
- 인터페이스는 상호작용하기 힘든 두 개 또는 그 이상의 시스템 등 사이에서 간접적으로 기능 소통을 하게 해줄 수 있는 접점이다.
4) 고급언어를 이용한 프로그래밍에서 입/출력 장치를 사용하는 부분에서는 API를 사용한다.
API란?
- 어플리케이션을 만들 때 사용되는 함수지만 역할이 인터페이스이기 때문에 인터페이스로 부른다
5) 일반적으로 C 언어는 운영체제가 제공하는 API를 이용해서 프로그래밍을 한다. 하지만 자바 언어는 그것을 사용하지 않고 자바 플랫폼의 API를 사용한다. 그 이유는 무엇인가?
- 운영체제 API를 정해놓고 그것에 맞춰서 프로그래밍을 하다보면 운영체제에 종속되어 각 언어의 사용마다 일일이 맞춰야 하는 불편한
상황이 발생하기 때문이다.
6) 출력 API인 print 또는 write 함수는 출력 Stream 객체를 이용한다. 그렇다면 출력 Stream 이란 무엇을 말하는 것인가?
- Stream은 방향성을 갖고있는 메모리 영역인 버퍼를 뜻한다. write()의 경우 단어를 하나씩 출력하는 함수인데 바로 출력하지 않고 버퍼에 쌓아 놓은 후 8키로바이트가 채워지면 출력 한다.
7) 멀티태스킹 환경이란 무엇을 말하는 것인가?
- 한번에 다중 작업을 수행하는 것으로 다수의 작업들이 하나의 공간대(cpu)의 자원을 나눠 사용한다.
8) 동시성(Concurrency)이란 무엇인가?
- 동시성이란 한 지역에서(컴퓨터 등)프로그램 작업들이 동시에 발생할 때 생기는 현상으로, 충돌을 막기 위해 일들의 순서를 정하여 실행 처리량과 순서 정하기 등에 도움을 준다. 이를 막기 위해선 이미 진행중인 프로그램의 다음 대기자가 동시에 들어오지 못하도록 잠금하거나 또는 자원 늘리기 등의 방법이 있다.
9) 다음 보기에서는 핸드폰 사용에 대한 동시성 문제가 발생하여 두 남매가 싸우고 있다.
이 동시성을 해결하기 위한 일반적인 방법 2가지가 있는데, 두 가지의 방법을 설명하시오.
---------------------------------------------------------
철이는 지금 엄마 핸드폰으로 친구의 연락을 기다리고 있다. 그런데 그의 누나가 갑자기 짜장면을
시켜먹겠다고 전화기를 가져갔다. 그런데 동생은 지금 친구의 전화가 더 중요하다.
그래서 누나가 핸드폰을 가져가라는 것을 막고 나섰다. 이렇게 핸드폰 하나를 두고 둘이 서로
사용하겠다고 싸우고 있는 상황인데....
---------------------------------------------------------
1. 핸드폰을 들고 방으로 들어가서 누나가 못들어오게 문을 잠금
2. 누나에게 집전화기를 줌 또는 핸드폰을 사줌
10) 출력 API가 출력장치를 직접 사용하지 않고 출력 스트림을 이용하는 이유는 무엇인가?
- 끝내놓은 작업이 실행되기 전까지 무한정 기다리지 않도록 하기 위해서 스트림을 이용해 버퍼에 끝낸 작업을 담아 놓고
그 다음 작업을 수행하기 위함이다.
11) 우리는 OutputStream 이라는 개체(Entity)를 가지고 있다고 가정하고 그 개체를 실체화하려고 한다.
실체화된 객체명을 "쇠돌이"라고 한려고 한다면 쇠돌이를 생성하는 자바 코드를 작성해보시오.
- OutputStream 쇠돌이 = new OutputStream();
12) 우리는 실제로 출력스트림 객체를 직접 생성한 적이 없다. 자바 코드에서 우리는 out 이라는 객체 명을 그냥 사용할 수가 있는데,
어떻게 된 것일까? 그 이유를 쓰시오.
- 자바의 기본 입출력을 위해 out 객체를 사용하는데 이는 내장객체로 기본적으로 제공되기 때문에 new 선언을 하지 않아도 사용이 가능하다.
'국비 2019.03.11 > 3월' 카테고리의 다른 글
| 03.15 과제 (0) | 2019.03.15 |
|---|---|
| 03.15 수업정리 (0) | 2019.03.15 |
| 03.14 수업정리 (0) | 2019.03.14 |
| 03.13 과제 정리 (0) | 2019.03.13 |
| 03.13 (0) | 2019.03.13 |