자바 프로그래밍을 위한 준비 사항

백다진·2023년 11월 22일
0

사람은 컴퓨터를 어떻게 이용하는가?




- 우선, 컴퓨터란 무엇인가?

  가장 근본적으로 생각하는 컴퓨터의 기능은 연산이다. 크고 비싼 계산기.
이러한 기능을 담당하는 부분이 CPU이고, 계산이 끝난 데이터는 메모리에 저장된다.(CPU가 언제든 엑세스 가능)



- 그럼 CPU와 메모리는 어떤 특징이 있을까?

  CPU는 연산(ALU), 흐름제어(CU) 부분 및 내부 메모리 등이 있다.
기본적으로 연산(계산)만 가능한 ALU로 순서대로 명령어와 데이터가 전달되는데, 이때 CU는 명령을 전달할 뿐만 아니라 필요에 따라 특정 순서로 돌아가거나 건너뛰는 명령을 내릴 수 있다. 순서의 흐름을 제어하는 기능이다.

 메모리는 CPU의 데이터를 저장하는 램(휘발성 메모리)과 보조장치로 필요에 따라 추가해 사용하는 HDD, SSD(비휘발성 메모리인) 등이 있다.

  램의 경우 전원이 들어와있는 상태에서만 저장이 가능하며 종료된 후에는 정보가 휘발된다. 그러나 CPU의 빠른 동작을 보조할 수 있을만큼 속도가 빠르다는 특징이 있다.

HDD, SSD의 경우 비교적 속도가 느리지만 전원이 종료되더라도 정보가 휘발되지 않고 영구적으로 저장이 가능하므로 OS, 프로그램 등의 저장장소로 사용된다.



다시 돌아와서, 사람은 이러한 기계장치를 어떻게 사용할까?


  사람은 컴퓨터를 물리적으로 사용할 수 없다.
따라서 사용자(사람)와 컴퓨터 사이에는 이용할 수 있도록 도와주는 접점인 UI(User Interface)가 필요하다.

  *Interface란 두 물체 사이에 상호작용이 가능한 접점을 의미한다.



이런 Interface는 누가 만드는가?

  사용자가 컴퓨터를 이용할 수 있도록 개발자가 만들어준다.
  자바 개발자의 경우에는 자바 어플리케이션을 제공한다고 할 수 있다.


그럼 개발자는 어떻게 Interface를 만드는가?

  개발자가 컴퓨터를 이용하기 위해 사용하는 도구는 2가지가 있다.

언어

  • 개발자는 CPU가 처리할 수 있는 2진법 기계어를 하나하나 스위치 눌러 입력하지 않는다.(물론 과거에는 정말 했다.)
    1세대 기계어, 2세대 어셈블리어(어셈블러)를 지나 3세대 고급언어인 C언어, 자바, 파이썬 등등 여러가지 언어가 생겼고 해당 언어를 기계어로 번역해주는 컴파일러가 탄생했다.

플랫폼 API

  • 개발자는 컴퓨터와 상호작용할 수 있는 인터페이스가 있어야 원활한 개발이 가능하다. 이 플랫폼 API는 그러한 개발 환경을 제공해주며 OS 환경에 구애받지 않고 API를 사용할 수 있도록 도와준다.

위의 내용을 토대로 자바 프로그래밍을 생각해본다면,
우리는 자바 언어와 자바 플랫폼 API를 이용하여 컴퓨터 환경이라는 플랫폼에서 개발을 하게 되는 것이다.




profile
awsome

0개의 댓글