1. 타입스크립트란
📚

1. 타입스크립트란

Description
타입스크립트에 관한 내용
Published
2023-08-17

정리

타입스크립트는 종종 '자바스크립트의 상위 집합(superset)' 혹은 '타입이 있는 자바스크립트'로 설명되곤 한다.
 
타입스크립트는 네 가지로 설명된다.
  • 프로그래밍 언어: 자바스크립트의 모든 구문과, 타입을 정의하고 사용하기 위한 새로운 타입스크립트 고유 구문이 포함된 언어
  • 타입 검사기: 자바스크립트 및 타입스크립트로 작성된 일련의 파일에서 생성된 모든 구성 요소를 이해하고, 잘못 구성된 부분을 알려주는 프로그램
  • 컴파일러: 타입 검사기를 실행하고 문제를 보고한 후 이에 대응되는 자바스크립트 코드를 생성하는 프로그램
  • 언어 서비스: 타입 검사기를 사용해 VS Code와 같은 편집기에 개발자에게 유용한 유틸리티 제공법을 알려주는 프로그램
 
타입스크립트는 종종 자바스크립트보다 느리다는 오해를 받는다. 컴파일 시간을 고려하면 느리다고 생각할 수 있지만 현재 대다수는 타입스크립트의 컴파일러를 사용하지 않고 타입 검사용으로만 사용하기 때문에 느리지 않다. 또한 빌드 시에 시간이 조금 더 걸리지만 빌드 파이프라인은 대부분 성능 저하를 무시하도록 설정된다. 코드에서 방생할 수 있는 오류를 분석하는 느린 타입스크립트 기능은 실행 가능한 애플리케이션 코드 파일을 생성하는 것과는 분리된 채로 수행된다.
 

생각

본인은 처음 타입스크립트를 접했을 때 타입스크립트는 프로그래밍 언어라고만 생각했었다. 그러나 타입스크립트를 사용하면서 타입 검사기가 알려주는 경고로 인한 코드 오류 방지와 언어 서비스를 통한 자동완성 기능이 주는 편리함은 타입스크립트를 단순 언어로 국한시킬 수 없는 사용자에게 편의성을 제공해주는 프로그램으로 봐야 한다고 생각이 들었다.
그렇다고 타입스크립트가 무조건적인 편리함을 제공해 주는 것은 아니다. 타입을 지정해서 코드를 짠다는 것은 생각보다 어렵고 고민을 많이 해야하는 작업으로 처음 타입스크립트를 접할 때는 정신이 혼미해지는 경험을 하게 된다. 하지만 사람은 실수를 하게 되는 법! 실수를 예방시켜주는 타입스크립트는 장기적으로 봤을 때 충분히 배울 가치가 있다고 본다.