본문 바로가기

Java/Jsp

Java SE(J2SE), Java EE(J2EE), Java ME(J2ME)


Platform

  Platform 의 사전적 의미 중 “기반” 이라는 단어가 Java에서 가장 적절한 뜻이라고 볼 수 있다. 즉 Java Platform 이란 포괄적인 의미로는 java환경이 돌아갈 수 있는 Hardware 환경, Software 환경 같은 것을 의미한다. J2SE가 그러한 환경 중에 PC와 관련이 있지만 더 작은 단위인(OS의 구분) Windows, Unix, MaxOS 등으로 나뉜다. 따라서 Java를 구동시키는 환경에 따라 Platform이 달라진다고 볼 수 있다. 즉 자바를 이용하여 같은 프로그램을 구동하더라도 OS에 따라 코드의 내용이나 설정이 조금씩 바뀔 수 있다는 것이다. 그러나 Java는 독립성을 꾀 추구 하고 있으며 이것이 가장 큰 장점이라고 볼 수 있다.

SDK (Standard Development Kit or Software Development Kit)

  위의 두가지 표현 모두 맞다고 보시면 됩니다. 어떻게 사용하고, 어떻게 해석하는가에 따라 다르지만 내용은 비슷합니다. SDK는 자바뿐만아니라 모든 개발언어의 소프트웨어 개발 킷을 말합니다. 프로그램을 개발하려면 개발하는 프로그램이 있어야 겠죠? 그것을 말합니다^^

JDK (Java Development Kit)

   위에 설명한 SDK가 모든 소프트웨어 개발 킷이라면 JDK는 말그대로 JAVA 개발 킷을 말합니다. 즉, Java용 SDK의 이름이 JDK라고 표현할수 있습니다. 그런데 요즘들어 J2SE Development Kit라고 표현되있는 것을 볼수있습니다. 이것은 J2SE의 JDK를 다운받을때 볼수 있는데 java.sun.com 홈페이지에 가보면 sun에서는 J2SE의 경우 jdk라 표현하며 이때 J2SE Development Kit라고 되있습니다.

   그리고 J2EE의 경우 j2eesdk라고 되있습니다. 즉, 최근 sun에서는 J2SE의 개발킷을  jdk라고 표현하고 J2EE의 개발킷은 j2eesdk라고 표현하고 있습니다. 

 Java SE (J2SDK : Java2 Standard Development Kit)

  자바 플랫폼 스탠더드 에디션(Java Platform, Standard Edition)는 가장 널리 쓰이는 자바 API의 집합체이다. 예전에는 J2SE로 불리었으나 버전 6.0이후에 Java SE로 변경되었다. 이전에는썬 마이크로시스템즈에서 관리하였으나, J2SE 1.4 이후는 JCP 주도하에 개발되고 있다. 따라서, JSR 59에는 J2SE 1.4를, JSR 176에는 J2SE 5.0(프로젝트명 타이거)를, Java SE 6 (프로젝트명 무스탕)은 JSR 170 하에 개발되었다.

  Java EE (J2EE : Java2 Enterprise Edition)

  자바 플랫폼 엔터프라이즈 에디션(Java Platform, Enterprise Edition)은 자바를 이용한 서버측 개발을 위한 플랫폼이다. Java EE 플랫폼은 표준 플랫폼인 Java SE를 사용하는 서버를 위한 플랫폼이다. 웹 애플리케이션 서버에서 동작하는 장애복구 및 분산 멀티티어를 제공하는 자바 소프트웨어의 기능을 추가 하였고 이전에는 J2EE라 불리었으나 버전 5.0 이후로 Java EE로 개칭되었다.

  Java ME (J2ME : Java2 Micro Edition)

  자바 플랫폼 마이크로 에디션(Java Platform, Micro Edition)을 말한다. Java 2 Platform, Micro Edition라고도 불리며, Java ME 혹은 J2ME 등으로도 널리 알려져 있다. 제한된 자원을 가진 휴대전화, PDA, 세트톱박스 등에서 Java 프로그래밍 언어를 지원하기 위해 만들어진 플랫폼 중 하나를 가리킨다.

 JRE (J2SE : Runtime Environment) 

  JRE는 실행버젼입니다. JDK로 제작한 테스트 프로그램등을 실행할수 있도록 해주죠. 그래서 파일용량이 적은대신 개발할수는 없습니다. 기본적으로 디벨로퍼킷에 JRE가 포함되어 있으므로 따로 설치할 필요가 없습니다. 예를들면 한글뷰어 아시죠? 한글파일을 작성할수는 없지만 읽을수는 있죠. 이것과 비슷합니다^^