1 설명
프로그래밍 언어의 한 종류로, 하나의 응용 소프트웨어(애플리케이션)를 제어하기 위한 용도로 쓰이는 언어이다.
일반적인 응용 소프트웨어는 컴파일러를 사용하는 언어에 의해 기계어로 번역된 채로 실행되기 때문에, 수정이 빈번하게 발생할 경우에는 수정 후 일일히 컴파일을 다시 해야 된다. 덩치가 큰 프로그램은 컴파일 시간도 몇 시간 단위로 잡아먹는 일이 많은데다, 일일히 컴파일을 다시 하는 것도 상당히 귀찮은 작업이다.
이 때문에 수정이 빈번하게 발생하는 부분은 소스코드를 한줄 한줄 읽어 바로바로 실행하는 인터프리터 방식이 상당히 유리하다. 스크립트 언어는 이런 부분에 사용하기 위해 나온 것으로, 응용 소프트웨어에서 스크립트 언어에 맞는 API를 제공, 응용 소프트웨어와 상호작용하면서 돌아가게 된다.
2 컴파일 언어와 다른점
- 컴파일 과정을 거치지 않고 실시간으로 텍스트를 분석하며 실행된다. (일부 간단한 컴파일을 지원하는 스크립트 언어도 있다)
- 코드에 문법 오류가 있을 경우 실행시점에서 발견된다. (근래에는 실행 전 파싱 단계에서 발견되는 경우가 많다.)
- 컴파일 언어보다 단순하고 쉬운 문법을 사용하는 경우가 많다.
- 바이너리 컴파일된 언어는 목표로 한 운영체제에서만 실행이 가능하나, 스크립트 언어로 된 코드는 스크립트 엔진이 포팅되어 있는 모든 운영체제에서 실행할 수 있다.
- 컴파일 언어보다 실행 속도가 느리다. (JIT컴파일 기술의 도입으로 실행속도가 크게 개선된 언어도 있다. JavaScript, ActionScript가 대표적.)
- 단일 응용프로그램으로 사용되기 보다는 응용프로그램 내에서 특정 역할을 수행하는 경우가 많다.