[Java] Java 버전

Konseo·2024년 1월 29일
0

Java & Spring

목록 보기
8/8

JAVA 버전

JAVA 버전은 굉장히 많고, 현재(24.1.15) 기준 LTS 가장 최신 버전은 21이다

모든 버전에 LTS가 붙어있는 것은 아닌데, 여기서 말하는 LTS는 long term support의 약자로, 오랜 기간 동안 지원하는 특별한 버전의 에디션이라고 생각하면 된다

그래서 구버전의 경우 아무리 LTS 버전이더라도 이미 지원 종료된 버전도 있다 (7은 재작년에 종료) 

JDK releases를 보면 21(2023), 17(2021), 11(2018), 8(2014), 7, 6 ….  는 LTS 버전임을 알 수 있다

Java 버전지원 기간
8 version~2030.12
11 version~2026.9
17 version~2029.9

위 표와 같이 8, 11, 17 버전은 모두 LTS 버전이므로 굉장히 긴 시간 지원하고 있으며, 8버전과 그 이하 버전의 차이가 크기 때문에 8버전 이후로 사용하는 것을 무조건 추천한다.

Java 버전 사용 비율을 보면 2022년 기준 Java17을 많이 사용하는 추세이나, 여전히 Java8 도 많이 쓰는 것 같다. ( 21버전은 너무 최근이라 아직 많이 쓰지는 않는 듯 )

Java 8 vs java 1.8? 
버전 정보는 크게 두 가지로 분류된다. 
1.8.0 이런식으로 나타내는 것과 JAVA 8로 나타내는 경우.  
전자를 버전 스트링이라고 하고, 후자를 버전 넘버라고 한다 
결론은 둘 다 동일한 의미이고 공식적인 이름은 JAVA SE 8 이다
OPEN JDK 8 로도 불리는 듯 하다 

JAVA SE 와 JAVA EE (명세표)

  1. JAVA SE(Standard Edition)
    표준 자바 플랫폼으로 표준적인 컴퓨팅 환경을 지원하기 위한 자바 가상머신 규격 및 API 집합 (명세표)

  2. JAVA EE(Enterprise Edition)
    JAVA SE 에 웹 어플리케이션 서버에서 동작하는 기능을 추가한 플랫폼

  1. JAVA ME(Micro Edition)
    제한된 자원을 가진 휴대전화, PDA 등에서 Java 프로그래밍 언어를 지원하기 위해 만든 플랫폼 

JDK란 

JDK는 java development kit 의 약자로, 자바 플랫폼의 등장 아래 지금까지 가장 널리 사용되고 있는 소프트웨어 개발 키트(SDK)이다. 해석 그대로 Java로 소프트웨어를 개발할 수 있도록 여러 기능들을 제공하는 패키지를 일컫는다. JDK의 구성은 굉장히 많은데, 많이 언급되는 것들은 다음과 같다 

  • Apt 
  • Appletviewer 
  • Javac 
  • Java 
  • Jar 
  • Jdb 
  • JRE 
    • Jvm, 라이브러리 등 다양한 파일 포함 
  • JVM 
    • Java virtual machine의 약자로 java가 실제로 동작하는 가상환경.
    • 이것 덕분에 하나의 java 프로젝트를 개발해도 여러 환경에서 원활하게 실행시킬 수 있다 
      등등.. 

위의 항목들은 Java를 개발 및 실행하는 데 필요한 툴들이며, 특히 JRE가 있어야만 Java가 실제 동작할 수 있다. 다시 말하면 JDK는 JAVA SE와 같은 규격을 토대로 만들어진 소프트웨어 패키지이다.

profile
둔한 붓이 총명함을 이긴다

0개의 댓글