컴파일 언어와 스크립트 언어의 차이점
컴파일과 인터프리트
컴퓨터는 이진수(0,1)만을 이해하기 때문에 우리가 작성한 코드를 컴퓨터가 알아듣게 하기 위해서는 프로그래밍 언어를 기계어로 바꾸는 과정이 필요하다.
기계어로 번역하는 방식은 언어에 따라 다른데 컴파일(compile)과 인터프리트(interpret)가 있다. 컴파일을 실행하는 변환기를 컴파일러, 인터프리트를 실행하는 변환기를 인터프리터라고 부른다.
컴파일 언어는 대표적으로 java, C,C++등이 있고, 스크립트 언어는 javascript, python등이 있다.
컴파일 언어로 작성한 경우 컴파일을 하면 컴파일러에 의해 기계어로 변환된 파일이 생성되고, 프로그램을 실행시킬 때 컴퓨터는 변환된 파일을 실행한다.
스크립트 언어로 작성된 경우 인터프리트를 하면 인터프리터에 의해 번역할 파일을 받고 코드 한줄 한줄씩 기계어로 번역한 후 실행시킨다.
컴파일 언어와 스크립트 언어의 장단점
컴파일 언어의 장단점
- 프로그램 실행 전 소스 코드를 미리 기계어로 변환시킨 파일이 있기 때문에 실행속도가 스크립트 언어에 비해 빠르다
- 문법적 제약이 많다
- 운영체제(Windows, Mac Os등)에 따라 다르게 작업해야한다
- 규모가 큰 프로그램일 경우 컴파일과정에서 시간이 많이 걸릴 수 있다
- 컴파일과정에서 문법적 오류가 있는 경우 컴파일 에러를 발생시켜 디버깅이 수월하다
스크립트 언어의 장단점
- 프로그램을 실행하는 과정에 번역하는 과정이 포함되어 있어 실행속도가 컴파일 언어에 비해 느리다
- 문법적 제약이 비교적 적다
- 운영체제에 제약을 받지 않는다
- 규모가 큰 프로그램일 경우 컴파일 과정이 오래 걸리기 때문에 수정이 빈번한 부분은 스크립트 언어로 작성하는 것이
효율적이다
- 문법적 오류가 있더라도 일단 실행되기 때문에 비교적 디버깅이 어렵다
// 이미지 라이센스
Photo by Markus Spiske on Unsplash