less than 1 minute read

자바 컴파일링

Java 코드는 JavaCompiler를 통해 ByteCode로 변환이 된다.

그리고 ByteCode는 다시 기계어로 번역이 된다.

이 과정이 때문에 자바는 속도가 느리다는 평을 듣는다.

JIT

Java는 인터프리터 방식의 컴파일 방식을 사용하는데 여기에 문제점이있다.

Java compiler는 Java 파일을 ByteCode로 변환 한 후 다시 기계어로 변환을 하는 작업이 있고 이 작업이 비용이 많이 든다.

이러한 단점을 극복하기위해 JIT 방식이 등장했다.

JIT 방식은 실행 시점에 자주 쓸만한 코드들을 기계어로 변환 시켜놓고 저장해 뒀다가,

재사용 할 때 이미 변환된 기계어 코드를 재 사용 하는 방식을 말한다

이 과정을 하기위에 처음에 메모리를 잡아두거나 하는 선행 작업들이 있어서 초기 실행 속도는 다소 느릴수있지만,

그 이후로는 변환하는 작업들이 줄어들어 실행속도가 많이 향상된다.

코드가 재사용될일이 없거나 규모가 작은 프로그램에서는 배보다 배꼽이 더 클수도 있지만 일반적으로 더 빠른속도를 자랑한다.

출처 : https://medium.com/@lazysoul/jit-just-in-time-16bb63f3ae26