컴파일 언어 VS 인터프리터 언어
한마디 버전 한국어 : 컴파일된 언어는 컴파일러를 통해 구현되며 소스 코드를 기계어로 바꾸는 과정을 사전에 처리 하여 빠르게 컴퓨터에서 구동될 수 있도록 한 방법 이며, 인터프리터 언어는 대부분 소스코드를 기계어로 컴파일하지 않고 인터프리터를 통해 소스코드 실행시 각 스테이트먼트(소스코드 구문)를 하나 이상의 서브루틴 순서로 변환한 후, 기계어나 바이트코드등 다른 언어로 변환되어 구현됩니다. 영어 : Compiled language is implemented through compilers which process converting source code into machine language is pre-processed so that it can be run faster on the computer. Most interpreted languages are implemented by translating each statement into one or more subroutine sequences when executing a program through the interpreter, then converting the source code into other languages like machine languages or bytecode. |
1. 컴파일 언어와 인터프리터 언어 종류
컴파일 언어 | 인터프리터 언어 |
|
|
출처: 위키피디아
일부 언어는 컴파일언어가 될수도 있고 인터프리터 언어가 될 수 도 있습니다. 파이썬은 CPython, PyPy, Jython, IronPython, PythonNet 처럼 다양한 컴파일러를 가지고 있어 소스코드를 바이트코드로 바꾸어주며, Jython은 JVM에서 실행시킬때, PythonNet은 .Net Common Language Run-time과 파이썬을 통합시켜주는 패키지 입니다. 처음 파이썬을 배울때는 정말 '파이썬 다운 파이썬'만 알게되지만, 실제로 현업에서는 CPython으로 생각될 때도 많이 있습니다.
2. 컴파일 언어 VS 인터프리터 언어
컴파일 언어 | 인터프리터 언어 |
|
|
* 언어간의 성능을 비교하는 것은 체계적으로 하기란 엄청나게 어렵습니다. 각 언어의 성능은 그 언어의 설계와 구현 품질(Implementation Quality)에 의해 영향을 받습니다. '컴파일이냐' '인터프리터이냐' 이것들은 그냥 두 개의 분리된 기준이며, 우리가 이 2개의 기준으로만 언어를 평가할때 사용됩니다. 그래서, 언어별로 차이가 있고, 컴파일 언어가 인터프리터 언어보다 항상 빠르지 않을수 도 있습니다.