코딩의 기록

컴파일러와 인터프리터

모루우 2024. 10. 28. 18:58
728x90
반응형

https://velog.io/@dat0802/%EC%BB%B4%ED%8C%8C%EC%9D%BC%EA%B3%BC-%EC%9D%B8%ED%84%B0%ED%94%84%EB%A6%AC%ED%84%B0-%EC%96%B8%EC%96%B4%EC%9D%98-%EC%B0%A8%EC%9D%B4%EC%A0%90

 

컴파일러와 인터프리터 언어의 차이점

컴파일러와 인터프리터란? 컴파일러와 인터프리터의 특징을 알아보기 전에 고급 언어와 저급 언어에 대해 알아보자. 앞서 말한 급은 난이도가 아닌 어떤 주체에 가까운지를 말한다. 높은 수준

velog.io

 

컴파일러, 인터프리터: 고급언어 -> 저급언어로 바꾸어주는 변환기

 

둘의 차이는

 

컴파일러

전체소스를 한번에 기계어로 변환 후 한 번에 실행

-> 그래서 속도가 빠름 (한번에 컴파일하고 한번에 실행하니)

-> 그러나 컴파일 과정에서 단순한 오류 때문에 실행이 안됐을 때 다시 컴파일 하기까지 시간이 오래걸림 개발 편의성은 떨어짐

 

인터프리터

한 줄씩 읽고 바로 실행

-> 속도가 느림 (1 실행 -> 1 컴파일 -> 2실행.. 이렇게 계속 불러내야 하니까)

-> 그러나 각 행을 바로 실행하기에 바로 행을 수정하고 실행하면 되니까 개발 편의성은 좋음

 

한줄로 정리하면

 

컴파일러는 개발편의성은 떨어지지만 실행속도는 빠름

인터프리터는 개발편의성은 높지만 실행속도는 느림

 

비교적 저급언어인 C, C++은 실행속도를 위해서 보통 컴파일러를 사용하고

 

비교적 고급언어인 루비나 파이썬은 개발 편의성을 위해 인터프리터를 사용함

 

요약

1. 컴파일러와 인터프리터는 저급언어를 고급언어로 변환해주는 변환기이다

2. 컴파일러는 개발편의성은 낮지만 속도는 빠르고, 인터프린터는 개발편의성은 높지만 속도는 느리다

3. 그래서 비교적 저수준 언어는 컴파일러를, 비교적 고수준 언어는 인터프리터를 사용한다

 

 

728x90
반응형