컴파일러 = 번역기
자바와 자바스크립트 두 종류의 언어가 존재합니다
거기서도 자바(컴파일) / 자바스크립트(런타임)의 타임들이 존재하죠 오늘 알아공부한건 JAVA의 컴파일 입니다
예시를 돕기위해 자바 와 자바스크립트의 컴파일/런타임 순서를 알려준 이미지를 가져왔습니다
자바 컴파일 순서
1.개발자가 자바 소스코드를 작성합니다
2.자바컴파일러가 자바 소스코드 파일을 읽고 바이트코드(.class)로 컴파일을 진행합니다
여기서 바이트코드란 ?
-아직까지 컴퓨터가 읽을 수 없는 JVM( 자바 가상 머신)이 읽을 수 있는 코드를 뜻합니다
또한 바이트 코드의 각 명령어는 1바이트 크기의 Opcode와 추가 피연산자로 이루어져 있습니다
3.컴파일된 바이트 코드를 JVM의 클래스로더 ( class Loder)에게 전달합니다
4. 클래스 로더는 동적로딩 (Dynamic Loading)을 통해 필요한 클래스드을 로딩 및 링크하여 런타임 데이터 영역
(RNUtime Data area), 즉 JVM의 메모리에 올립니다
5.실행엔진(Execution Engine)은 JVM 메모리에 올라온 바이트 코드들을 명령어 단위로 하나씩 가져와서 실행합니다. 이때, 실행 엔진은 두가지 방식으로 변경합니다.
자바스크립트 런타임 장점 과 단점 (0) | 2022.09.18 |
---|---|
JAVA Script 런타임 (0) | 2022.09.18 |
인프리터 언어 와 컴파일러 언어 차이점 (0) | 2022.09.17 |
innerText , innerHTML / innerContent 차이점 (0) | 2022.09.16 |
innerText 와 innerHTML 차이점 (0) | 2022.09.16 |