타입스크립트란?

Tags
부가 설명
비고

타입스크립트?

MS에서 만든 오픈소스 프로젝트
Superset of JavaScript로 JS가 기반이므로, JS가 돌아가는 환경이라면 활용 가능.
 

타입 결정 순간

  • JSdynamically typed 되므로 컴파일 단계에서 찾지 못하고 런타임 에러가 터지는 경우가 많다. 빠르게 프로토타입 잡는 데에는 장점이 되겠지만, 규모가 커질수록 에러 잡기도 어려워 단점으로 작용한다.
    • 가독성도 떨어짐 ( 한눈에 어떤 데이터를 담는 변수인지 모르므로 )
  • TSStatically Typed 되므로 컴파일 에러로 대부분의 에러를 잡을 수 있다는 큰 장점이 있다.
 

객체지향?

  • JSPrototype-based로 객체지향 설계가 가능하며 생성자 함수도 지원하고 클래스도 생겼지만, 이것만으로는 강력한 객체지향 프로그래밍을 짜기에는 한계가 있다.
  • TS에는 다른 객체지향 언어들처럼 interface, class, generics, types 등도 활용할 수 있어 더욱 막강한 객체지향 프로그래밍이 가능하다.
 

JS가 돌아가는 환경이라면 OK

  • TS는 JS위에 얹어져 있다고 생각하면 됨.
  • TS를 그대로 쓰는 게 아니라 JS로 transcompile을 거쳐 실행하므로 JS가 돌아가는 환경이면 됨.
 

컴파일러?

TypeScript code is transformed into JavaScript code via the TypeScript compiler or Babel.
TS → JS로 변환해줄 컴파일러는 타입스크립트 툴 자체에서 제공하는 컴파일러 또는 Babel을 써도 됨.
어떤 ES 버전으로 변환할 지 설정하여 모든 브라우저에서 동작 가능하도록 변환 가능.