Compile
사람이 이해하는 언어를 컴퓨터가 이해하는 언어로 바꿔주는 과정
정적언어인 경우 가능함 - C언어, Java ...
즉, 변수 Type이 존재
변수의 타입이 존재해야 내가 만든 변수의 크기를 알 수 있고 그래야 메모리의 사이즈를 측정하고 기계에 의해 실행 가능
Interpreter
소스코드를 한 줄씩 읽어서 바로 실행하는 방식
동적언어인 경우 가능 - python, javascript ...
변수의 Type을 모름
JIT(Just In Time)
1. 중간언어로 컴파일
가상 머신(JVM..) 위에서 작동하는 파일로 컴파일
2. VM에 의해 인터프리터로 실행
중간언어 -> os에 맞게 컴파일 실행
실제 개발
미리 모든 것을 개발하고 컴파일하는 것이 아니라 실행 속도가 느림
그렇기에 개발 환경에서 사용
AOT(Ahead-Of-Time compile)
운영체제에 맞춰 컴파일
배포환경에서 사용
아래의 영상을 보고 정리한 글
https://www.youtube.com/watch?v=NATSWdq2AvU&list=PL93mKxaRDidGEaUXprXqhNvSW02xCjLZI&index=5
728x90
'Study > Computer Science' 카테고리의 다른 글
동기 / 비동기 & 블로킹 / 논블로킹 (0) | 2021.06.08 |
---|