인터프리터(스크립트) 언어
개발자가 작성한 코드를 기계어로 변환 과정없이 한줄 한줄 해석하여 실행하는 언어임.
즉, 한줄이 바뀔 때마다 즉시 검사하는 방식이다.
한문장씩 즉시 명령어를 검사하다보니 언어 속도가 빠르지 않다.
번역과 실행을 순차적으로 동작시키기 때문에 1개의 액션이 동작하게 된다.
ex) R, Python, PHP, Javascript
컴파일 언어
개발자가 작성한 코드를 모두 기계어로 변환한 후에 기계어 코드로 실행하게 됨.
즉, 작성한 코드나 명령어를 한꺼번에 모아서 한번에 실행하는 방식이다.
한번에 하다보면 처음에는 오래 걸릴 수 있으며, 메모리도 많이 먹게 된다.
하지만 컴파일 이후에는 실행이 빠르며, 한번에 변환을 다 해줬기 때문에 그 이후로는 변환할 필요가 없다.
실행 전 번역이 필요하기 때문에 번역 한번 그리고 실행 한번 총 2개의 액션을 동작하게 된다.
ex) C, C++, Java, Rust, Go
인터프리터(스크립트) 언어를 사용하는 이유?
컴파일을 사용하게 되면 번역을 한번에 하기 때문에 좋을 수 있다. 하지만, 규모가 큰 프로그램이라면 컴파일이 몇시간 걸릴 수 있다.
인터프리터 언어는 소스를 바꾸고 나서 바로바로 실행, 디버깅할 수 있으니 쵝 개발하기에 너무 편하다.
스크립트 언어는 인터프리터 방식에서 나온 것으로 응용 소프트웨어와 상호 작용하며 제어하게 된다.
자바스크립트 또한 웹브라우저에서 console.log()를 찍어보면 출력되는 것을 알 수 있다.
스크립트 언어의 특징은 새로운 프로그램을 만드릭 보다는 기존의 프로그램을 제어하기 위해 쓰인다.
웹이 없다면 자바스크립트를 쓰는 의미가 없는 것처럼, 스크립트 언어들은 기존 프로그램을 전제로 사용하게 된다.
'개념 정리' 카테고리의 다른 글
이메일 템플릿(웹메일) 코딩 시 주의사항 (0) | 2022.01.21 |
---|---|
<wbr> vs <br> (0) | 2022.01.18 |
polyfill(폴리필)이란? (0) | 2022.01.13 |
[MAC] 사용 중인 포트 찾아서, Kill (0) | 2022.01.11 |
[Node] NVM? 노드 버전관리 (0) | 2022.01.07 |