Fall in IT.

인터프리터언어와 컴파일언어에 대해서 본문

기타

인터프리터언어와 컴파일언어에 대해서

D.Y 2016. 10. 9. 14:39

안녕하세요.


오늘은 인터프리터언어와 컴파일언어에 대해서 알아보겠습니다.



인터프리터란?

  • 인터프리터(interpreter, 해석기)란 소스코드를 바로 실행하는 컴퓨터 프로그램 또는 환경을 말한다. 소스코드를 목적코드로 옮기는 컴파일과 대비된다.
  • 인터프리터는 소스코드를 한줄 한줄 읽어들이면서 실행하는 프로그램 입니다.
  • 인터프리터 실행과정
  • 인터프리터에서는 번역과 실행이 동시에 이루어집니다. 즉, 별도의 실행파일이 존재하지 않습니다.


컴파일이란?

  • 컴파일(compile)이란 소스코드에서 목적코드로 옮기는 것 을 말합니다.
  • 컴파일 과정
  • 컴파일을 하게 되면 실행가능한 파일(프로그램)이 생성됩니다.
  • 이러한 프로그램을 목적프로그램이라고도 하고, 컴퓨터 하드웨어(cpu)가 알아 들을 수 있는 기계어로 번역되었다는 의미에서 바이너리 파일이라고도 합니다.
  • 위에 그림에서 와 같이, 번역과 실행이 따로 이루어집니다.


컴파일러란?

  • 컴파일러(compiler, 번역기)는 특정 프로그래밍 언어를 다른 프로그래밍 언어로 옮기는 프로그램을 말한다.
  • 간단히, 컴파일 해주는 프로그램을 의미합니다.


인터프리터 언어의 종류

  • 흔히 말하는 스크립트 언어가 대표적입니다.
  • 자바스크립트, HTML, 액션스크립트, SQL, python, ruby 등..


컴파일 언어의 종류

  • C, C++, JAVA, C# 등 ..


인터프리터언어와 컴파일언어의 장단점

  • 인터프리터언어
    - 컴파일이 없기 때문에, 별도의 컴파일시간이 없습니다.
    - 따라서, 크기가 큰 소스코드의 경우 컴파일 시간이 오래 걸릴 수 있는데 인터프리터 언어의 경우 바로 실행이 가능합니다.
  • 컴파일 언어
    - 컴파일된 프로그램의 경우 일반적으로, 인터프리터를 이용해 실행시키는 것보다 훨씬 빠르게 동작합니다.


참조


Comments