개발 공부/자바스크립트

[엘리의 드림코딩] Java와 JavaScript의 차이점이 뭔가요? 이걸 왜 묻냐고요?

5묘 2022. 12. 7. 15:07

https://youtu.be/LYQvmDuQAMI

자바 VS 자바스크립트

- 자바는 객체 지향적 언어이고, 클래스 기반의 언어이다.
- 자바는 어플리케이션을 만들기 위해 사용된다. 
- 자바는 컴파일 -> 바이트코드로 바뀌어 JVM 상에서 디바이스에 상관 없이 작동된다.
- 백엔드에서 많이 사용한다.

- 자바스크립트는 스크립트 언어라 컴파일 과정이 없다.(근데 You Don't Know JS는 자바스크립트는 컴파일레이션 과정이 있는 컴파일 언어라 한다. 한번 찾아봐야지...)
- 프론트엔드에서 많이 사용한다.
- 브라우저 상에서 컴파일 과정 없이 바로바로 실행된다.
- dyanamic typing(동적 타입)으로 변수에 값 할당한다.
- 프로토타입 기반의 객체지향(처럼 보이는) 언어이다.
- 함수는 일급 객체이다.(C언어처럼 함수를 활용한다.)


프론트엔드 기술면접 빈출 질문 중에 자바와 자바스크립트 차이를 묻는 질문이 있어서 '이걸 대체 왜 묻는거지?' 하고 생각한 적이 종종 있었다.🤔 애초에 둘이 너무 다른 언어이고, 활용하는 곳도 전혀 다른데 이 둘을 왜 굳이 비교하는 질문을 하는거지? 싶었다.

그런데 자바스크립트와 자바의 명칭때문에 같은 것이라 생각하는 사람도 있어서, '얘가 진짜 자바스크립트가 뭔지 아나, 이 언어를 한번쯤 다뤄봤나? (역으로) 자바스크립트만 할 줄 알고 자바는 들어본 적도 없는건가?' 하고 걸러내려는 목적의 아주 기초적 수준의 질문이었다는 것을 알았다. 나도 맨 처음에 학교에서 자바만 배우고 자바스크립트는 배운 적이 없었을 때, 자바스크립트가 자바랑 비슷한 문법을 쓰는 언어인 줄 알았으니까.

게다가 둘은 확연히 다른 언어다 보니, 이렇게 비교해놓고 보면 각 언어의 특징을 잘 알고있는지 파악하기도 용이하다. 그래서 물어보는 것 같다.