JAVA를 알기전에 프로그래밍 언어란 무엇인지부터 알고 넘어가야 한다고 생각합니다.
프로그래밍 언어
프로그래밍 언어란 프로그램을 작성하기 위한 언어로서 컴퓨터의 CPU는 이진수로 된 0과 1밖에 이해하지 못하며 이런 언어를 기계어라고 합니다.
그리고 사람이 직접 기계어로 컴퓨터 프로그램을 만들기 어렵기 때문에 표현하기 쉬운 상징적인 단어들인 니모닉 기호(mneomonic symbol)로 일대일 대응시킨 언어인 어셈블리어가 만들어졌습니다.
하지만 어셈블리어 역시 사람이 다루기 힘든 저급 언어로서 다양한 프로그램의 구조나 자료구조를 표현하기에는 너무 복잡하였습니다. 이에 사람들이 표현하고 이해하기 쉬우며, 복잡한 알고리즘이나 프로그램 구조, 자료 구조를 효율적으로 표현할 수 있는 pascal,Basic, C/C++, JAVA 등의 고급 언어가 생겨나게 되었습니다.
고급 언어는 크게 절차지향 언어와 객체지향 언어로 나눌 수 있는데 자바는 객체 지향 언어입니다.
언어의 차이에 대해서는 다음 포스팅에서 설명하도록 하겠습니다.
컴파일
프로그래밍은 고급 언어를 이용하여 전용 개발도구나 텍스트 편집기로 프로그램 소스 파일을 작성하는 것을 의미합니다.
소스프로그램은 택스트파일이어서 어떤 텍스트 편집기에서도 작성이 가능합니다.
기계어는 컴퓨터가 바로 이해할 수 있는 언어이지만 C나 자바와 같은 고급언어로 작성된 소스 프로그램은 컴퓨터가 이해할 수 없으므로, 소스프로그램을 기계어로 변환하는 과정이 필요합니다. 이 과정을 컴파일이라고 합니다.
기계어로 변환해주는 소프트웨어를 컴파일러라고 하며, 각 언어마다 고유한 컴파일러가 있습니다. 그렇기 때문에 C컴파일러로 자바소스 프로그램을 컴파일 할 수는 없습니다.
'프로그래밍 > JAVA' 카테고리의 다른 글
JAVA의 특징 (0) | 2022.02.17 |
---|---|
JDK?JRE? (1) | 2022.02.15 |
자바와 타 언어(c/c++)의 실행 환경 차이 (1) | 2022.02.14 |
JAVA[자바]의 실행환경 (0) | 2022.02.14 |
절차지향언어? 객체지향언어? (2) | 2022.01.16 |