Programming, IT 관련/IT 용어, 상식

Compiler 언어와 Interpreter 언어

지후0816 2021. 5. 8. 14:05

complier 언어와 interpreter언어의 가장 큰 차이점은 컴파일을 수행하는 시점이다.

런타임 전에 컴파일을 수행하면 complier 언어이고, 런타임에 interpreter을 수행하면 인터프리터 언어이다.

 

 

complier 언어는 런타임 전에 컴파일해서 메모리에 올리기 때문에 메모리를 많이 차지하지만 빠르다.

C,C++, C# 등이 compiler 언어에 속하고, interpreter언어는 런타임 중에 한줄한줄 해석하며 실행하기 때문에 상대적으로 complier 언어보다 느리지만 코드 변경 시 즉시 실행이 가능하다는 장점이 있다. 대표적으로  자바스크립트, HTML, 파이썬, SQL, 루비 등이 interpreter언어에 속한다.

 

 

자바의 경우 javac 명령어를 통해 컴파일을 하게 되고, 그 결과로 바이트코드를 얻기 때문에 complier 언어이지만, VM(가상 머신)에서 바이트 코드를 다시 기계어로 변환한다는 점에서 interpreter언어의 특징도 가지고 있다.