컴파일러와 인터프리터를 비교해서 설명해 주세요.

  • 컴파일러인터프리터는 컴퓨터가 프로그래밍 언어를 실행할 수 있는 기계어로 번역을 하는 2가지 방식이다.

  • 컴파일러

    • 전체 프래그램을 한 번에 컴파일하여 실행 파일로 만든다.

    • 이 실행 파일은 컴퓨터가 직접 실행할 수 있는 기계어 코드로 되어 있어 프로그램이 실행될 때 빠르다.

    • 하지만 소스 코드가 변경되면 다시 컴파일 과정을 거쳐야 한다.

    • 전체 코드를 스캔하는 과정에서 오류를 보여주기 때문에 실행 전에 오류를 알 수 있다.

    • 대표적인 컴파일 언어로 C, C++, Java 등이 있다.

  • 인터프리터

    • 프로그램이 실행될 때마다 소스 코드를 한 줄씩 읽어 기계어로 변환하여 실행한다.

    • 이 과정을 매번 실행하기 때문에 느리지만, 소스 코드 변경 즉시 반영된다.

    • 프로그램을 실행 후에 오류를 알 수 있다.

    • 대표적인 인터프리터 언어로 Python, Ruby, Javascript 등이 있다.

꼬리 질문

  • 컴파일 최적화

    • 컴파일러가 작성된 코드를 최적화하여 변환된 실행 파일의 성능을 개선하는 것

Last updated