[5.1.6 버전]
ts는 js에 타입을 추가하여 확장한 언어이다. 이를 통해 코드 실행 시 발생하는 에러를 잡거나 고치는 시간을 절약할 수 있다. 또한, 어떤 브라우저나 OS, 실행환경에서도 완벽히 작동한다. 그러나 ts 파일은 단독으로 실행될 수 없으며, 컴파일러를 통해 브라우저가 이해할 수 있는 순수 js로 변환해야 한다.
js 인터프리티드 언어이다. 이는 소스 코드를 컴파일하지 않고, 런타임에 한 줄씩 해석하여 실행하는 방식을 의미한다.
하지만 TypeScript는 컴파일드 언어이다. 물론 C++나 자바와 같은 전통적인 컴파일드 언어와 차이점이 있지만, 컴파일 시점이 유사하여 컴파일드 언어로 불리기도 한다. 일부 개발자들은 이를 트랜스파일이라고 부르기도 한다.
npm init - y
npm 라이브러리의 dependancy가 등록될 수 있는 형태로 만드는 것을npm init을 통해 할 수 있다.
vscode의 터미널에서 이 명령어를 실행할 때, -y를 뒤에 붙이면 추가 사항을 전부 yes로 통과해 빠른 설치가 가능하다. 그리고 이렇게 만들어진 프로젝트를 npm 프로젝트라고 한다.
npm i typescript -D
typescript node는 런타임에 필요하지 않기 때문에 -D 명령어와 함께 설치한다.
-D는 devdependencies의 약자로, 개발용으로 사용함을 의미한다.
tsc --init
npx tsc
또한 test.ts
라는 파일의 내용을 변경하면, 즉시 test.js
파일이 새로 생성되도록 컴파일을 자동화하느 명령어가 있다. tsc -w
이다. w는 watch의 약자이며 ts 파일의 업데이트를 지켜보겠다는 뜻이다. 또한 vscode에는 typescript compiler가 내장되어 있다. 내장된 컴파일러 버전은 vscode가 업데이트 되면서 올라간다.
그래서 컴파일러 버전과 vs code의 버전은 상관 관계가 있다. 내장된 컴파일러를 선택할 수 있고, 직접 설치한 컴파일러를 선택할 수도 있다.