여기까지는 이론. 다음부터는 실제의 코드를 이야기할 것이다.
대다수의 프로그래밍 언어는 어떻게 동작하는가?
"컴파일" 을 들어봤을 것이다.
컴퓨터는 이진수만 이해할 수 있다. 인간은 이진수를 이해하기 "매우" 힘들고 우리만의 언어를 사용하기 때문에, 중간 과정을 해석해 주는 컴파일이 반드시 필요하다.
그리고 컴파일을 해주는 도구가 컴파일러이다.
자바스크립트의 컴파일를 거치면 바이트 코드가 된다.
물론 그냥 바로 바뀌는 것은 아니고 AST(추상 문법 트리)를 통해서 변환 후에 AST를 바이트 코드로 바꾸게 된다.
그렇다면 타입스크립트는 어떻게 실행이 될까?
쉽게 말하면. 타입스크립트는 대다수의 프로그래밍 언어처럼 컴파일하는 것과 비슷하게 작동하지만, 중간에 타입을 검사하는 과정이 추가된다.
(이때에는 바이트코드가 아니고 자바스크립트로 변환한다.)
정리하자면 다음 그림처럼 과정이 실행된다.
중요한 것은 "타입 검사"이다. 타입 검사에서 성공하면 비교적 안전한 자바스크립트가 생기는 것이다.
이후 타입스크립트에 존재한 타입 관련 코드는 사라진다.
애초에 웹 브라우저는 타입스크립트를 이해할 수 없다. 그래서 중간에 자바스크립트로 바꿔주는 과정이 필요하다.
추가 글
추가적인 정보는 다음 글을 참고하라.
https://velog.io/@ggob_2/typescript-2
#2 타입스크립트 동작 원리
#2 타입스크립트의 컴파일러, 자바스크립트와의 차이점에 대해 알아보자
velog.io
'프론트 엔드 > TypeScript' 카테고리의 다른 글
타입스크립트의 배열과 튜플 (0) | 2025.04.09 |
---|---|
타입스크립트의 기본 타입 (0) | 2025.04.08 |
타입스크립트는 무엇인가? (0) | 2025.04.02 |
한 입으로 먹는 타입스크립트 (8) | 2025.04.01 |