프로그래밍 언어는 고급언어와 저급 언어로 구분이 된다. 고급 언어란 컴퓨터와 대화 할 수 있도록 만든 언어 중에서 사람이 쉽게 이해할 수 있는 언어를 말한다. 고급언어로 작성된 소스는 컴퓨터가 바로 이해할 수 없기 때문에 컴파일(Compile)과정을 통해서 컴퓨터가 이해할 수 있는 0과 1로 이루어진 기계어로 변한한 후 컴퓨터가 사용하게 된다. 즉, 고급언어에서 저급언어로 바꾸는 것이 컴파일의 정의 및 핵심이라 할 수 있다. 반대로 저급언어란 기계어에 가까운 언어를 말하는데, 대표적으로 어셈블리어가 저급언어에 속한다. 저급언어는 사람이 쉽게 이해할 수 없기 때문에 배우기가 매우 까다롭다. 일반적으로 프로그래밍 언어라고 하면 고급 언어를 말하는데, 대표적인 프로래밍 언어는 C, C++, JAVA는 모두 고급언어에 속한다.