Part6_TypeSciprtCompile
김호준
책 읽기

Study

런타임과 컴파일 타임

컴파일타임

  • 소스코드가 컴파일러에 의해 기계어코드로 변환되어 실행이 가능한 프로그램이 되는 단계

런타임

  • 컴파일이 완료되면 메모리에 적재되어 실행되는 단계

컴파일러의 역할

  1. 최신 버전의 타입스크립트, 자바스크립트 코드를 구버전의 자바스크립트로 트랜스파일한다.
  2. 코드의 타입 오류를 검사한다.

컴파일 과정

  1. tsc 명령어를 실행하여 프로그램 객체가 컴파일 과정을 시작한다.
  2. 스캐너는 소스 파일을 토큰 단위로 분리한다.
  3. 파서는 토큰을 이용하여 AST를 생성한다.
  4. 바인더는 AST의 각 노드에 대응하는 심볼을 생성한다. 심볼은 선언된 타입의 노드 정보를 담고 있다.
  5. 체커는 AST를 탐색하면서 심볼 정보를 활용하여 타입 검사를 수행한다.
  6. 타입 검사 결과 에러가 없다면 이미터를 사용해서 자바스크립트 소스 파일로 변환한다.