카테고리 없음
스프링 프로젝트 시작! - JDK는 뭐지...?
또또니엘
2023. 10. 9. 20:35
💬 자바 스프링 조합으로 프로젝트를 시작하려고 마음먹었지만...
시작부터 심상치 않다. 😱
자바 버전은 많은 강의에서 사용되고 또 채용에서의 기준이 되는 듯한 11버전을 선택했지만
이후 JDK버전 선택에 있어 이미 궁굼증이 생기기 시작했다. JDK 는 뭐지...??
무지성 구글링 시작
JDK - Java로 소프트웨어를 개발할 수 있도록 여러 기능들을 제공하는 패키지(키트)
* JDK는 자바 가상 머신(Java Virtual Machine, JVM), 그리고 자바 런타임 환경(Java Runtime Environment, JRE)과 함께 자바 프로그래밍에 사용되는 3대 핵심 기술 패키지 가운데 하나다.
💬 아직 JDK가 뭔지도 모르기때문에 원램 목적이었떤 JDK에 집중!!
1️⃣ JDK의 구성
- apt : 어노테이션 툴
- appletviewer : 웹브라우저 없이 자바 애플릿을 실행하고 디버깅하기 위한 툴
- javac : 자바 컴파일러. 자바 소스파일을 바이트코드로 변환
- java : javac가 만든 클래스 파일을 해석 및 실행
- jar : 서로 관련있는 클래스 라이브러리들과 리소스를 하나의 파일로 묶어주는 툴
- jdb : 자바 디버깅 툴
- JRE(Java Runtime Enviroment) : Java가 동작하는데 필요한 JVM, 라이브러리 등 다양한 파일들을 포함한다. Java를 실행하려면 JRE를 설치해야한다!
- JVM(Java Virtual Machine) : Java가 실제로 동작하는 가상 환경. 이 JVM덕분에 하나의 Java프로젝트를 개발해도 여러 환경에서 원활하게 실행시킬 수 있다!
💬 아직 뭐가 뭔지 잘모르겠지만 이렇나 것들로 구성되어있다고 한다. 😩
2️⃣ JDK의 종류
- Java SE : Java Platform , Standard Edition
표준 자바 플랫폼으로 표준적인 컴퓨팅 환경을 지원하기 위한 자바 가상머신 규격 및 API 집합을 포함한다.
JavaEE, JavaME는 구체적인 목적에 따라 자바 SE를 기반으로 API를 추가하거나 자바 가상머신 규격 및 API의 일부를 택하여 정의된다.
- Java EE : Java Platform , Enterprise Edition
JavaSE에 웹 어플리케이션 서버에서 동작하는 기능을 추가한 플랫폼
이 스펙에 따라 제품을 구현한 것을 웹 어플리케이션 서버(WAS)라 한다. ex. tomcat
- Java ME : Java Platform , Micro Edition
제한된 자원을 가진 휴대전화, PDA 등에서 Java 프로그래밍 언어를 지원하기 위해 만든 플랫폼 중 하나이다.
💬 아주 제한적으로 JDK가 무엇인지 정도만 찾아 보았으며 더욱 깊은 내용은 앞으로의 공부가 더 필요해 보인다.
💎 개인 정리 : JDK는 JAVA개발시 필요한 JRE, JVM등 을 포함하고 있는 개발 키트(패키지) 이며 종류는 기준이 되는 SE, 웹 어플리케이션에 적합한 EE, 제한된 자원을 가진 휴대폰, PDA 등에 적합한 ME 3가지가있다.
[참조]
https://velog.io/@shelly/JAVA-JDK%EB%9E%80
https://sangwoo0727.github.io/java/JAVA-2_jdk/
https://www.itworld.co.kr/news/110817