Java에 대해 알아보자

홍예석·2024년 1월 4일
0

자바란?

자바 표준 스펙

자바 표준 스펙과 구현

자바는 자바 진영에서 만들어 둔 표준 스펙이 있다. 자바 컴파일러자바 실행 라이브러리, 자바 가상 머신(JVM)의 표준 스펙을 공지한다. 이에 따라 여러 회사에서 이 표준을 근거로 한 저마다의 실행 가능한 자바를 구현해 배포하는데, 대표적으로 Oracle OpenJDK, Adoptiu, Eclipse Temurin, Amazon Corretto가 있다. 각 자바에는 특징이 있으며 Amazon Coretto의 경우 AWS에 최적화 되어 있는 자바다.

변경의 용이성

이렇게 회사마다 다른 버전의 자바를 제작할 경우, Oracle OpenJDK를 쓰다가 Amazon Corretto로 변경할 경우 호환에서 문제가 발생할 수 있지는 않은 지에 대해 걱정이 생길 수 있지만 그러한 문제가 대부분의 경우에서 발생하지 않는다는 것이 바로 자바의 강점이다. 자바 진영에서 공지한 자바의 표준 스펙에 맞게 제작되어야 하기 때문에, 호환 문제가 거의 발생하지 않는 것. 따라서 프로젝트를 유지 보수하는 과정에서 더 적합한 자바가 있다면 버전을 변경하여 다르게 사용할 수 있다.

컴파일과 실행

기본적으로 코딩을 한다는 것은 아래 과정을 거치는 것이다.

  1. Hello.java 파일에 개발자가 소스 코드를 작성
  2. java에 있는 javac라는 이름의 컴파일러가 소스 코드를 컴파일해 .class 파일 생성
  3. java에 있는 java라는 이름의 실행 프로그램이 실행됨.
  4. 자바 가상 머신(JVM)이 실행되면서 .class 파일을 읽어 프로그램 작동

자바와 운영체제 독립성

일반적인 프로그램

모든 프로그램은 OS 위에서 작동하게 되어 있다. 하지만 Window, Mac, Linux 모두 저마다의 명령어가 다르기 때문에 Window 프로그램은 Mac과 Linux와 호환되지 않는다.

자바 프로그램

하지만 자바는 이 문제를 해결하고 있다. 컴파일된 .class 파일을 실행하는 java가 운영체제마다 있기 때문에, Window OS에서 프로그램을 사용하고 싶다면 Window용 java를, Mac OS에서 사용하고 싶다면 Mac용 java를 다운로드 받아 사용하면 된다.

자바 개발과 운영 환경

위와 같은 자바의 강점으로 인해, 개발자는 소스 코드로 .java 파일 하나만 만들어 두면, 이 소스 코드가 포함된 프로그램을 어느 운영 체제 위에서라도 사용할 수 있게 된다. 개발자가 자바 문법에만 맞게 .java 파일을 만들었다면, Window, Mac, Linux 어느 OS에서든지 해당 OS에 맞는 java를 설치하여 .java 파일을 컴파일 및 실행하면 된다.

profile
잘 읽어야 쓸 수 있고 잘 들어야 말할 수 있다

0개의 댓글