JDK를 설치하는 이유는 무엇일까?

JDK(Java Developer Kit)는 자바 개발자가 사용하는 도구를 의미합니다. Java는 객체지향을 대표하는 언어 중 하나로 객체지향언어(OOPL)라고도 하며 그 중 대표적인 언어라고 할 수 있습니다. Java의 특징이자 장점 중 하나인 ‘platform 독립적이다’ 라는 것 때문에 JDK를 설치해야 하는 이유가 생긴다고 볼 수 있습니다. 이게 무슨 말이냐면 우리가 흔히 사용하고 있는 MicroSoft社(이하 MS)의 Excel을 예로 들자면 Excel의 확장자인 .xlsx 즉, Excel을 사용하려면 그를 지원하는 SW가 있어야 됩니다. 즉, Excel이 설치 되어있어야 .xlsx를 사용할 수 있다는 것이죠. 또한 MS의 Excel은 Windows환경(OS)에서 구동이 되죠. 여기서 platform 설명하자면 .xlsx의 입장에선 SW 즉, Excel이 platform 되는 것이고 또, Excel 입장에서는 Windows(OS)가 platform 되는 것이죠. 여기서 Java는 Excel이라고 생각하시면 됩니다. 개발자가 작성하는 것은 .xlsx 과 같다고 볼 수 있습니다.

즉 Java는 OS에 대해 독립적이라는 뜻이죠. OS 즉, OS X이든, Windows이든 어떤 OS(이하 platform 함)의 영향을 받지 않고 어떤 OS든 구동이 된다는 것이죠.(Oracle社에서 지원하는 OS에 한하여) 그러나 이렇게 구동이 되려면 JRE(Java Runtime Environment)라는 Java가 실행될 수 있는 환경이 있어야만 합니다. JRE가 있어야만 Java Application이 정상적으로 구동될 수 있는 것이죠. 바로 아래의 그림을 참조하시면 이해가 더 쉽게 될 거 같습니다.

출처 : http://codingfox.com/0-8-jvm-vs-jre-vs-jdk

즉, Java Application이 구동이 되려면 JVM과 JRE가 필요합니다. 거기다가 Developer Tools가 추가 된 것이 바로 JDK이죠. 그러니까 JDK는 개발자들에게 Tool과 실행환경을 제공해주어 개발과 Test를 동시에 할 수 있는 것이죠. 여기서 Tools는 그림에 명시된대로 java, javac 등을 일컫습니다. JVM(Java Virtual Machine)은 JRE를 통해 Byte Code(기계어어와 같은 Low Language)를 실행시키는 역할을 합니다.