.
.
.
프로그래밍 언어
- 고수준 언어 : 사람이 이해하기 쉬운 형식으로 작성
컴파일 타임 : 소스코드가 컴파일 과정을 거쳐 컴퓨터가 인식할 수 있는 기계어 코드(바이트 코드)로 변환되어 실행할 수 있는 프로그램이 되는 과정.
런타임 : 소스코드의 컴파일이 완료되면 프로그램이 메모리에 적재되어 실행
-> 컴파일 과정을 마친 응용 프로그램이 사용자에 의해 실행되는 과정.
: 자바스크립트가 실행되는 환경
자바스크립트 = 인터프리터 interpreter 언어
: 별도의 컴파일 과정 존재 x ---> 엄밀히 말하면 존재 O
(자바스크립트를 해석,실행하는 역할인 v8엔진은 때때로 컴파일 단계 거침.-> 실행속도 향상 목적)
컴파일 : 고수준 -> 저수준 변환 과정
타입스크립트 : tsc라고 불리는 컴파일러를 통해 자바스크립트 코드로 변환.
타입스크립트의 컴파일 : 고수준 언어 (TS) -> 또다른 고수준 언어 (JS)
-> 타입스크립트 컴파일러 = 소스 대 소스 컴파일러
타입스크립트 : .ts 확장자 파일 -컴파일-> .js 확장자 파일
-> 타입스크립트 컴파일러는 소스코드 해석 => AST(최소 구문 트리) 만듦 => 이후 타입 확인을 거친 다음 결과 코드 생성
AST(Abstract Syntax Treo)
: 컴파일러가 소스코드를 해석하는과정에서 생성된 데이터 구조.
컴파일러는 어휘적 분석 & 구문 분석 -> 소스코드를 노드 단위의 트리 구조로 구성.