본문 바로가기
필수 개발지식

[프로그래밍언어] 스크립트(인터프리터)언어 & 컴파일언어 개념정리!

by 코딩하는짱구 2023. 8. 1.
반응형

✅ 프로그래밍언어

컴퓨터 프로그램을 작성하는데 사용되는 형식적인 언어

 

 

✅ 컴파일언어 & 스크립트(인터프리터)언어

컴파일언어 vs 스크립트언어 쉬운설명!

 

**컴파일 : 코드를 컴퓨터언어인 0과 1로 번역

 

 

컴파일언어(Compiled language)

작성한 코드를 모두 기계어로 변환한 후에 기계어 코드로 실행하는 방식
  • 실시간이 아니다! 영어원서를 한국어로 해석한 파일을 받는 것, 중간 통역자가 없어 
  • 만약 영어단어가 한국어에 없다, 번역가는 단어를 바꾸라고 요청함 - 에러상황
  • 즉 컴파일전에 에러를 수정하기 때문에 하고 나면 거기에 에러가 없는 것 
  • 컴파일 언어로 작성된 프로그램은 런타임 시간에 기계어로 직접 실행됌, 실행속도가 빠름
  • Java, C++, C, Rust, Go etc ..

 

인터프리터언어(Interpreted language)

작성한 코드를 기계어로 변환하는 과정 없이 한 줄 한 줄 해석하여 실행하는 방식
  • 소스코드를 런타임에 한줄 씩 읽어서 실행하는 인터프리터 사용
  • 실시간이다! 동시통역사를 떠올려보자
  • 동시통역사가 영어단어를 모르는 상황 - 에러상황
  • 실시간으로 통역이 이뤄지기때문에 문제가 터지기 전까지 에러를 해결할 수 없는 치명적 단점이 있다
  • JavaScript, HTML, Python etc .. 

 

즉 그림으로 보면 아래와 같다.

 

 

 

✅ 컴파일언어 & 스크립트(인터프리터)언어의 장단점 비교

  • 생산속도 : 컴파일 언어(컴파일링 과정) < 인터프리터언어 
  • 제약사항 : 컴파일 언어(소스코드작성을 위한 제약사항 多) < 인터프리터언어
  • 디버깅 : 컴파일 언어 > 인터프리터언어 (소스코드 실행전까지 오류인지 시점 늦음)
  • 실행속도 : 컴파일언어 > 인터프리터언어

 

 

 

 

 

**참고

https://velog.io/@kdh10806/Programming%EC%BB%B4%ED%8C%8C%EC%9D%BC-%EC%9D%B8%ED%84%B0%ED%94%84%EB%A6%AC%ED%84%B0-%EC%96%B8%EC%96%B4

https://youtu.be/9sSxdhYGYSM

반응형

'필수 개발지식' 카테고리의 다른 글

정규표현식(Regular Expression, Regex) 이란?  (0) 2023.08.01