개인 IoT작업을 하려 했지만,
새롭게 들어갈 프로젝트에서 앞으로 못 볼 줄 알았던 Java로 구성된 AOS앱이다.
다시 초심으로 돌아가서 용어부터 사용법까지 정리 해보고자 한다.
※다시 짚어보기 위해 작성하는 것이기 때문에 세세하게 설명되어 있지 않음
1. 컴퓨터는 어떻게 내 말을 알아 들을까?
컴퓨터는 '저급 언어'인 기계어로 0과 1로 이루어진 이진 코드만을 이해한다.
그치만 인간이 0과 1로 컴퓨터에 일일히 명령을 주기에는 한계가 있다.
그래서 만든 것이 '고급 언어'이다.
고급 언어는 C, Java 같은 언어를 일 컫는다.
그럼, 고급 언어로 작성 된 코드를 저급 언어만을 이해하는 컴퓨터가 알아 들을 수 있을까?
그래서 나온 것이 '컴파일러(Compiler)'이다.
2. java언어 배경
- 정확한 기억은 나지 않지만 어떠한 개발자 둘이 있었는데 고급 언어를 만들어 내었고, 명칭을 정하려 할 때, 마침 즐겨 마시던 커피인 'Java'로 정했다는 말을 들었다.
- 1991년도에 썬 마이크로시스템즈의 엔지니어들이 Oak라는 이름으로 가전제품 용도로 사용하려 했으나 인터넷의 등장으로 함께 사용되었고, 1995년 'Java'라는 이름으로 발표가 되었다고 한다.
3. JVM : Java Virtual Machine
java가 왜 어느 OS에서도 사용이 가능한 것이냐면, JVM에서 실행되기 때문이다.
JVM은 가상 운영체제이고, java는 이진 코드(기계어)가 아닌 바이트 코드이기 때문에 JVM에서 실행을 해주어야 한다.
JVM은 OS에 맞게 명령어를 다시 기계어로 번역하여 컴퓨터에게 전달한다.
4. 환경
JDK, JRE 그리고 위의 JVM 처음에 나는 이 세 가지를 흘렸다.
처음 코딩을 하고, Java로 시작을 하는 초심자라면 흘려도 상관 없다.
너무나 많은 것을 외워야 할 것? 같기 때문에 부담스러울 수 있다.
난중에 다시 보고 이해하면 더욱 흡수가 잘 될 것이다.
JDK : Java Development Kit
- Java 언어로 개발하기 위해서 필요한 키트, 장비
JRE : Java Runtime Environment
- Java 언어로 만들어진 파일을 실행 해주는 역할, 환경
위 에 두 설명으로만 이해하고 시작해도 충분하다.