JAVA 공부

JAVA의 설치전 간단한 용어 정리

cheol85 2020. 3. 16. 15:40

자바 프로그램의 동작

1 소스코드를 작성

2 컴퓨터가 실행할 수 있는 형태로 컴파일( .javac)

3 컴파일 된 프로그램을 실행

 

* 용어정리

Java SE(Java Platform, Standard Edition)

   :  표준 자바플랫폼, 표준적인 컴퓨팅 환경을 지원하기 위한 자바 가상 머신규격 및 API집합을 포함한다. 

 

JDK(Java Development Kit)

   : Java SE, Java EE, Java ME 플랫폼 중 하나를 구현하는 것으로 솔라리스, 리눅스, 맥OS X,또는 윈도우

     자바 개발자를 대상으로 오라클에 의해 바이너리 제품으로 제공, 자바 플랫폼의 등장 후 지금까지 가장 널리

     사용되는 소프트웨어 개발 키트(SDK)다.  개발자를 위한 자바버전이다.

SDK (Software Development Kit)

   : 일반적으로 소프트웨어 기술자가 사용하여 특정한 소프트웨어 꾸러미, 소프트웨어 프레임워크, 하드웨어 플랫폼

     컴퓨터 시스템, 게임기, 운영체제 등을 위한 응용프로그램 등을 만들 수 있게 해주는 개발도구의 집합,

     응용프로그램을 만들기 위해서는 특정한 SDK를 다운받아야 하는데 안드로이드 앱개발을 위해서는 java를 포함한 

     SDK,  IOS 개발을 위해서는 Swift가 포함된 IOS, Ms Windows를 위해서는 .net을 포함한 .Net Framework SDK가 

     필요하다. 또한 구글, 페이스북과 같이 분석과 활동에 대한 데이터를 제공하기 위해 SDK가 앱에 설치되어 있는

     경우도 있다.

 

JRE(Java Runtime Environment)

    : 자바가 실제로 동작하는데 필요한 JVM,라이브러리, 각종 파일들이 포함되어있다. 자바로 개발된 프로그램을

      구동하려면 설치해야 한다.

 

 

 

JVM(Java Virtual Machine)

    : 자바가 실제 구동하는 환경, jvm이라는 가상화된 환경에서 구동되며, 호환성문제를 운영체제 버전에 따라 만들어진

      jvm이 알아서 해결함

JVM의 특징

1. 스택기반의 가상머신

2. 단일 상속 형태의 객체지향 프로그래밍을 가상 머신 수준에서 구현

3. 포인터를 지원하되 C와ㅓ 같이 주소 값을 임의로 조작이 가능한 포인터 연산이 불가능하다.

4. 가비지 컬렉션 사용

5. 모든 기본 타입의 정의를 명확히 함으로써 플랫폼 독립성 보장

6. 데이터 흐름분석(Data Flow Analysis)에 기반한 자바 바이트코드검증기(Verifier)를 통해 스택 넘침, 명령어 피연산자의

   의 타입 규칙 위반, 필드접근 규칙 위반, 지역 변수의 초기화 전 사용 등 많은 문제를 실행 전에 검증하여 실행 시 안전

   을 보장하고 별도의 부담을 줄여줌 

7. 스택에서 가져올 피연산자의 타입을 명령어에 지정(예: 정수 덧셈은 iadd, 단정도 실수 덧셈은 fadd)

 

 

 

 

 

 

 

 

 

* 용어에 대한 정의는 위키백과 참조함