✅ JAVA
썬 마이크로시스템즈에서 개발하여 1996년 1월에 공식적으로 발표한 객체지향 프로그래밍 언어이다.
특징
- 운영체제에 독립적이다. 어느 운영체제 혹은 하드웨어인지에 상관 없이 JVM이 있는 환경이라면 실행이 가능하다.
- 객체지향언어이다. 상속, 캡슐화, 다형성이 잘 적용 되었다.
- 자동 메모리 관리 가비지컬렉터가 자동적으로 메모리를 관리한다.
- 네트워크와 분산처리 지원
- 멀티쓰레드 지원
- 동적 로딩을 지원 자바 프로그램 실행 시에 모든 클래스가 로딩되지 않고 필요한 시점에 클래스를 로딩하여 사용할 수 있다. 일부 클래스가 변경되어도 전체 애플리케이션을 다시 컴파일하지 않아도 되며, 애플리케이션의 변경사항이 발생해도 비교적 적은 작업만으로도 처리할 수 있는 유연한 애플리캐션을 작성할 수 J있다.
✅ JDK(Java Development KIt)
자바 개발키트의 약자로 개발자들이 자바로 개발하는데 사용되는 SDK라고 생각하면 된다.
JDK 안에는 자바를 개발 시 필요한 라이브러리들과 javac, javadoc 등의 개발 도구들을 포함되어 있고, 개발을 하려면 자바 프로그램을 실행해도 시켜줘야 하기 때문에 JRE(Java Runtime Environment)도 함께 포함되어 있다.
💡 SDK란 Software Development Kit(소프트웨어 개발 키트)로, 하드웨어 플랫폼, 운영체제 또는 프로그래밍 언어 제작사가 제공하는 툴이다. 키트의 요소는 제작사마다 다르다. SDK의 대표적인 예로, 안드로이드 스튜디오 등이 있다.
✅ JDK 버전 표기
Java SE(Java Standard Edition) : 가장 기본이 되는 표준 에디션의 자바 플랫폼으로 자바 언어의 핵심 기능 제공
- 가장 기본적인 클래스 패키지로 구성
- PC용 애플리케이션, 애플릿개발, 응용프로그램개발, 웹개발, 안드로이드개발
- PC에 설치해서 사용할 수 있는 모든 프로그램 개발에 관련된 것
Java EE(Java Enterprise Edition) : 대구모 기업용 에디션. SE 확장판(대형 네트워크환경 프로그램 개발시)
- 기업환경을 위한 대규모 솔루션 개발, 모바일폰, 셋탑 박스, 차량용 텔레매틱스 시스템개발
Java ME(Java Micro Edtion) : 피쳐폰, PDA폰, 셋톱박스, 프린터와 같은 작은 임베디드 기기들은 같은 작은 기기를 다루는데 이용하는 에디션
- JAVA SE를 줄여 라이트하게 만든 것이므로 SE개발을 할 줄 알면 ME기반의 개발도 가능
- 가각의 OS(ex. Android OS, IOS, Black Berry 등)를 자기고 있는 스마트 폰이 대중화된 지금은 잘 쓰이지 않는다.
JavaFX : 가볍고 예쁜 그래픽 사용자 인터페이스(GUI)를 제공하는 에디션
- 고성능의 하드웨어 그래픽 가속과 미디어 엔진 API를 제공해주어서 프로그램의 성능에 신경을 써야 하는 분야에서 사용
✅ JDK 디렉터리 구성요소
bin : 자바 개발,실행에 필요한 도구와 유틸리티 명령
include : 네이티브 코드 프로그래밍에 필요한 C언어 헤더 파일
lib : 실행 시간에 필요한 라이브러리 클래스들
✅ bin 디렉터리에 들어 있는 개발 프로그램
javac : 자바 컴파일러로 자바 소스를 바이트 코드로 컴파일
java : 자바 인터프리터, 컴파일러가 생성한 바이트 코드를 해석하고 실행
javadoc : 자바 소스로부터 HTML 형식의 API 문서 생성
jar : 자바 클래스 파일을 압축한 자바 아카이브 파일(.jar) 생성, 관리하는 압축 프로그램
jmod : 자바의 모듈(.jmd)을 만들거나 모듈 파일의 내용 출력
jlink : 응용프로그램에 맞춘 맞춤형 JRE 생성
jdb : 자바 응용프로그램의 실행 중 오류를 찾는 데 사용하는 디버거
javap : 역어셈블러, 컴파일된 클래스 파일을 원래의 소스로 변환.
✅ JRE(Java Runtime Environment)
JVM과 자바 프로그램을 실행시킬 때 필요한 라이브러리 API를 함께 묶어서 배포되는 패키지 이다. 이외에도 자바 런타임 환경에서 사용하는 프로퍼티 세팅이나 리로스 파일(jar 파일)을 가지고 있다.
JRE는 기본적으로 JDK에 포함되어 있기 때문에 JDK를 설치하면 함께 설치된다.
기존에는 개별적으로 설치가 가능했지만 JDK11버전부터는 따로 제공되지 않는다고 한다.
간단히 정리하자면, Java로 프로그램을 직접 개발하려면 JDK가 필요하고, 컴파일 된 Java 프로그램을 실행시키려면 JRE가 필요하다고 보면 된다.
✅ JVM(Java Virtual Machine)
자바를 실행하는 프로그램이다. 자바로 작성된 모든 프로그램은 JVM에서만 실행될 수 있으므로, 자바 프로그램을 실행하기 위해서는 반드시 자바 가상 머신을 설치해야 한다.
JVM은 JRE에 포함되어 있다. 그래서 현재 사용하는 컴퓨터의 운영체제에 맞는 자바 실행환경(JRE)이 설치 되어 있다면 자바 가상 머신이 설치되어 있다는 뜻이다.
'Programming > Java' 카테고리의 다른 글
[Servlet / JSP] MVC 패턴 & 실제 구조 (0) | 2023.08.09 |
---|---|
[Servlet / JSP] 서블릿 웹 프로젝트 생성 (0) | 2023.08.09 |
타입 확인 (0) | 2023.08.04 |
[JDBC] Service-DAO-DTO 구축 (0) | 2023.08.04 |
[JDBC] Oracle Database 연동 (0) | 2023.08.01 |