TypeScriptSTUDY _ 6장 . 타입스크립트 컴파일 [ 6.1 자바스크립트의 런타입과 타입스크립트의 컴파일 ]

zeroha·2024년 12월 16일
0

TypeScriptStudy

목록 보기
17/32
post-thumbnail

6.1 자바스크립트의 런타입과 타입스크립트의 컴파일

.
.
.

1. 런타입과 컴파일타임

  • 프로그래밍 언어
    - 고수준 언어 : 사람이 이해하기 쉬운 형식으로 작성

    • 저수준 언어 : 컴퓨터가 이해하기 쉬운 형식
  • 컴파일 타임 : 소스코드가 컴파일 과정을 거쳐 컴퓨터가 인식할 수 있는 기계어 코드(바이트 코드)로 변환되어 실행할 수 있는 프로그램이 되는 과정.

  • 런타임 : 소스코드의 컴파일이 완료되면 프로그램이 메모리에 적재되어 실행
    -> 컴파일 과정을 마친 응용 프로그램이 사용자에 의해 실행되는 과정.


2. 자바스크립트 런타임

: 자바스크립트가 실행되는 환경

  • 대표적인 런타임 : 인터넷 브라우저 (ex. 크롬, 사파리) & Node.js
  • 주요 구성 요소 : 자바스크립트 엔진, 웹 API, 콜백 큐, 이벤트 루프, 렌터 큐

자바스크립트 = 인터프리터 interpreter 언어
: 별도의 컴파일 과정 존재 x ---> 엄밀히 말하면 존재 O
(자바스크립트를 해석,실행하는 역할인 v8엔진은 때때로 컴파일 단계 거침.-> 실행속도 향상 목적)


3. 타입스크립트의 컴파일

컴파일 : 고수준 -> 저수준 변환 과정

  • 타입스크립트 : tsc라고 불리는 컴파일러를 통해 자바스크립트 코드로 변환.

  • 타입스크립트의 컴파일 : 고수준 언어 (TS) -> 또다른 고수준 언어 (JS)
    -> 타입스크립트 컴파일러 = 소스 대 소스 컴파일러

  • 타입스크립트 : .ts 확장자 파일 -컴파일-> .js 확장자 파일
    -> 타입스크립트 컴파일러는 소스코드 해석 => AST(최소 구문 트리) 만듦 => 이후 타입 확인을 거친 다음 결과 코드 생성

AST(Abstract Syntax Treo)
: 컴파일러가 소스코드를 해석하는과정에서 생성된 데이터 구조.
컴파일러는 어휘적 분석 & 구문 분석 -> 소스코드를 노드 단위의 트리 구조로 구성.

  • 개발자가 작성한 타입 정보는 단지 타입을 확인하는 데만 쓰임 -> 최종 프로그램에는 영향 x
  • 컴파일타임에서 타입을 검사 so, 에러 발생시 프로그램 실행 x
    -> 정적 타입 검사기static type checker라고 칭함.

도서참조 : 우아한 타입스크립트 with 리액트
profile
하 영

0개의 댓글

관련 채용 정보