프로그래밍 언어로 코드를 작성하고 실행시키는 방식 중 가장 유명하고 대표적인 두 가지 방식에 대해서 소개해볼까 합니다.
먼저, 인터프리터 방식
을 소개해드리겠습니다.
인터프리터 방식
은 프로그램을 실행할 때 인터프리터를 이용하여 코드를 한 줄 씩 읽어나가며 실행하는 방식입니다. 인터프리터 방식
을 이용하는 고급 프로그래밍 언어로는 JavaScript, Python, SQL 등이 있습니다.
인터프리터 방식의 장점
은 다음과 같습니다.
개인적인 경험으로는 인터프리터 방식을 채택한 언어들이
스크립트 언어
위주다 보니까 배우기에 쉽다는 장점도 있는 것 같습니다. 다만, 배우기 쉽다는 것은 처음 입문해서 해보기 어렵지 않다는 거지 언어 자체가 쉽다는 것은 절대로 아닙니다.
인터프리터 방식의 단점
은 다음과 같습니다.
컴파일러 방식
은 코드를 기계가 알아들을 수 있는 기계어로 번역하고, 실행하는 방식입니다. 더 정확히는 컴파일
과정을 거치는 방식을 의미하는데, 컴파일
은 어떤 언어로 작성된 코드를 다른 언어(보통 어셈블리, 기계어. 고급 언어간 변환도 컴파일이라고 할 수 있습니다.)로 변환하는 과정입니다. 컴파일러 방식
을 이용하는 언어는 C, C++, JAVA 등이 있습니다.
컴파일러 방식의 장점
은 다음과 같습니다.
처음 접하게 되면, 바로바로 한 줄 씩 읽어내는 인터프리터가 더 빠른거아니에요? 라는 물음이 충분히 생길 수 있습니다.
인터프리터 방식
같은 경우, 소스 코드에서 한 줄을 받아와서 이것을 컴퓨터가 이해하도록 번역하고, 결과물을 보여줍니다. 하지만 그 결과를 따로 저장해두지 않기 때문에 실행할 때마다 인터프리터가 번역하고 실행하게 됩니다.
반면,컴파일러 방식
은 소스 코드를 통으로 컴파일 과정을 거쳐서 컴퓨터가 이해할 수 있는 언어로 된 목적 코드를 만들어냅니다. 따라서 재실행시 이 목적 코드만을 읽어내면되며, 목적 코드는 컴퓨터가 바로 이해할 수 있는 언어이기 때문에 결과적으로는컴파일러 방식
의 속도가 빠르다라고 할 수 있는 것 입니다.
컴파일러 방식의 단점
은 다음과 같습니다.