본문 바로가기
기타

컴파일러(Compiler)와 인터프리터(Interpreter)

by Su1993 2020. 9. 22.
반응형

프로그램 언어를 해석하고 실행시키는 대표적인 방법이 컴파일러(Compiler)와 인터프리터(Interpreter)이다.

 


컴파일러(Compiler)

컴파일러는 고수준 언어로 작성된 프로그램 전체를 목적 프로그램으로 번역 후 링킹 작업을 통해 컴퓨터에서 실행 가능한 실행 프로그램을 생성한다. 번역 실행 과정을 거쳐야 하므로 번역 과정이 번거롭고 번역 시간이 오래 걸리지만, 한번 번역 후에는 다시 번역하지 않아도 되기 때문에 실행 속도가 빠르다. 컴파일러를 사용하는 언어에는 c, c++처럼 비교적 저수준에 가까운 언어이다.

 


인터프리터(Interpreter)

인터프리터는 고수준 언어로 작성된 프로그램을 한 줄 단위로 번역과 동시에 즉시 실행시킨다. 프로그램이 직접 실행되므로 목적 프로그램은 생성되지 않는다. 줄 단위로 번역과 동시에 실행되므로 시분할 시스템에 유용하며 원시 프로그램의 변화에 대한 반응이 빠르다. 번역 속도는 빠르지만 프로그램 실행 시 매번 번역해야 하므로 실행 속도는 느리다. 인터프리터를 사용하는 언어에는 Python, Ruby처럼 비교적 고수준에 가까운 언어이다.

 


 

  컴파일러 인터프리터
보안 프로그램의 코드가 유출되지 않는다. 프로그램의 코드가 유출된다.
실행 속도 빠르다. 느리다.
개발 편의성 코드를 수정하고 실행하려면 컴파일을 다시 해야 한다. 코드를 수정하고 즉시 실행할 수 있다.
파일 용량 프로그램의 실행 파일 전체를 전송해야 하므로 용량이 크다. 프로그램의 코드만 전송하면 실행이 되므로 용량이 작다.
프로그래밍 언어 C, C++처럼 비교적 저수준에 가까운 언어 Python, Ruby처럼 비교적 고수준에 가까운 언어

 

반응형

'기타' 카테고리의 다른 글

유닉스(Unix)와 리눅스(Linux)  (0) 2020.09.23
Agile(애자일) 그리고 Scrum(스크럼)  (0) 2020.08.17

댓글