728x90
컴파일러 언어와 인터프리터 언어 차이점 | |
컴파일러 언어 (c, c++, c#, java) | 인터프리터 언어( javascript, sql, html, python, ruby) |
코드가 실행 되기 전 컨파일 타임에 소스 코드 전체를 한번에 머신 코드로 변환 후 실행 |
코드가 실행 되는 런타임에 문 단위로 한줄씩 중간 코드인 바이트 코드로 변환 후 실행 |
실행 파일을 생성 | 실행 파일을 생성 하지 않음 |
컴파일 단계와 실행 단계가 분리되어 있다 명시적인 컴파일 단계를 거치고 명시적으로 실행 파일을 실행 한다 |
인터프리트 단계와 실행 단계가 분리 되어 있지 않다 인터프리터는 한 줄씩 바이트 코드로 변환 하고 즉시 실행한다 |
실행에 앞서 컴파일은 단 한번 수행 된다 | 코드가 실행 될 때 마다 인터프리트 과정이 반복 수행 된다 |
컴파일과 실행 단계가 분리 되어 있으므로 코드 실행 속도가 빠름 | 인터프리트 단계와 실행 단계가 분리 되어 있지 않고 반복 수행 되므로 코드 실행 속도가 비교적 느림 |
728x90
'프로그래밍 기본 개념' 카테고리의 다른 글
인터페이스(Interface)란? UI? API? (0) | 2024.07.13 |
---|---|
라이브러리(Library)와 프레임 워크(Framework) 차이 (0) | 2024.07.13 |
컴파일이란 ? (0) | 2022.05.19 |
보일러플레이트 Boilerplate 란 ? (0) | 2022.04.07 |
컴파일러 compiler , 인터프리터 interpreter 란 ? (0) | 2022.03.11 |