프로그래밍 언어겠죠 당연히
자바스크립트는 HTML, CSS와 함께 웹을 구성하는 요소 중 하나로 웹 브라우저에서 동작하는 유일한 프로그래밍 언어이다.
→ 자바스크립트는 기존의 프로그래밍 언어에서 많은 영향을 받았다.
기본 문법은 C, Java와 유사하고 Self에서는 프로토타입 기반 상속을, Scheme에서는 일급 함수의 개념을 차용했다.
인터프러터(Interpreter) Language
인터프리터는 소스코드를 즉시 실행하고 컴파일러는 빠르게 동작하는 머신 코드를 생성하고 최적화한다. 이를 통해 컴파일 단계에서 추가적인 시간이 필요함에도 불구하고 보다 빠른 코드의 실행이 가능하다.
인터프러터 언어가 뭔데요
→ 쉽게 설명하면 코드를 한줄씩 읽고 즉시 실행하는 방식의 프로그래밍 언어
📌 인터프리터 언어의 특징
- 실시간 실행 → 코드를 한 줄씩 해석하며 바로 실행 (ex. Python 코드를 실행하면 즉시 결과를 얻을 수 있음)
- 컴파일 과정 불필요 → 소스 코드를 기계어로 변환하는 과정 없이, 실행할 때마다 해석됨
- 플랫폼 독립성 → 같은 코드라도 인터프리터만 설치하면 어디서든 실행 가능
- 디버깅 용이 → 실행 중 오류가 발생하면 바로 수정 가능
객체지향언어 아니지 않나요?
아니지 않음.
자바스크립트는 명령형(imperative), 함수형(functional), 프로토타입 기반(prototype-based) 객체지향 프로그래밍을 지원하는 멀티 패러다임 프로그래밍 언어다.
비록 다른 객체지향 언어들과의 차이점에 대한 논쟁들이 있긴 하지만, 자바스크립트는 강력한 객체지향 프로그래밍 능력을 지니고 있다.
간혹 클래스(ES6에서 새롭게 도입되었다), 상속, 정보 은닉을 위한 키워드 private가 없어서 객체지향 언어가 아니라고 오해(자바스크립트는 가장 많은 오해를 받는 언어이다.)하는 경우도 있지만 자바스크립트는 클래스 기반 객체지향 언어보다 효율적이면서 강력한 프로토타입 기반의 객체지향 언어이다.
Reference
'FrontEnd Develop > JavaScript DeepDive' 카테고리의 다른 글
JS THEME #5. 기본 문법 (하) + 함수의 특별성과 this 부연 설명 (0) | 2025.02.01 |
---|---|
JS THEME #4. 기본 문법 (상)+ Statement 때문에 설명한 호이스팅과 스코프 (0) | 2025.02.01 |
JS THEME #3. 브라우저 심층분석 (1) | 2025.02.01 |
JS THEME #1. 기본개념 동작원리의 중요성 (0) | 2025.02.01 |