eajni IT 초보사전 💦💦

[JAVA] 주요 키워드

2022-10-31

특징

  • 배우기 쉬운 객체 지향 언어
    • 프로그래밍언어 + 객체 지향 개념
  • 자동 메모리 관리
    • Garbage Collector
  • 멀티 쓰레드 지원
    • 하나의 프로그램으로 동시에 여러 작업 가능
  • 풍부한 라이브러리로 쉽게 개발 가능
  • 운영체제에 독립적 WORA (Write Once Run Anywhere
    • 자바 가상머신(JVM, Java Virture Machine)

JVM(Java Virtual Machine)

  • Java Byte Code를 OS(Operating System : 운영체제)에 맞게 해석, 실행될 수 있는 런타임 환경을 제공해주는 규격
  • 자바 소스코드(.java)로부터 만들어지는 자바 바이너리 파일(.class)을 실행할 수 있다.
  • JVM 구성요소
    • 클래스로더 : 동적으로 클래스를 로딩해주는 역할
    • 자바인터프리터 : 자바 컴파일러에 의해 변환된 자바 바이트 코드를 읽고 해석하는 역할
    • JIT 컴파일러 : 프로그램이 실행 중인 런타임에 실제 기계어로 변환
    • 가비지 컬렉터 : 사용하지 않는 메모리를 자동으로 회수

JRE (Java Runtime Enviroment)

컴파일된 자바 프로그램을 실행시킬 수 있는 자바 환경 JVM이 실행될 수 있도록 도와주는 역할을 하는 파일로 주로 “사용자”가 사용한다.

JDK(Java Development Kit)

자바 언어를 사용하여 프로그램을 개발하기 위한 도구 모음

“개발자”를 위한 파일로 자바 소스코드를 직접 입력할 수 있다.

자바 프로그램 작성, 컴파일, 테스트 및 디버깅

💡 JDK = JRE + @ JRE : 읽기 전용 JDK : 읽기 / 쓰기 전용

개발 환경

J2SE(JAVA 2 Standard Edition)

  • 기본적인 Java의 개발/실행 환경으로 Java언어를 이용하여 어플리케이션(Application), 애플릿(Applet) 그리고 컴포넌트(Component) 등을 개발하고 실행할 수 있는 환경을 제공하는 플랫폼이다.
  • 어떠한 Java프로그램을 개발하더라도 J2SE설치는 필수이며 SDK, RE, Plugin 기술 등으로 구성된다.

Java ME

  • Java SE의 서브셋 + 임베디드 및 가전 제품을 위한 API 정의

J2EE(JAVA 2 Enterprise Edition)

  • 자바를 이용한 다중 사용자, 기업용 응용 개발을 위한 플랫폼
  • Java SE + 인터넷 기반의 서버사이드 컴퓨팅 관련 API 추가

자바 응용프로그램(컨테이너)

  • Servlet : 클라이언트가 보내는 HTTP 요청을 처리하는 서버측 자바 프로그램, Servlet 엔진이 있어야 함.
  • JSP(Java Server Pages): HTML이나 Java 코드를 써서 사용자에게 정보를 보여 줍니다. JSP가 처음 실행될 때 Servlet 엔진이 이것을 Servlet 으로 컴파일시켜서 내부적으로는 Servlet으로 동작합니다.
  • EJB(Enterprise Java Beans) : Java에서 제공하는 분산 컴포넌트 기술로 비즈니스 로직이나 데이터, 메시지를 처리할 수 있습니다.

자바 API

  • JDK에 포함된 클래스 라이브러리로, 주요한 기능을 미리 구현한 클래스 라이브러리의 집합
  • 실제로 사용하는 각종서비스 환경을 제공

자바 프로그램 실행 과정


Comments

Content