<aside>
📌 TypeScript는 타입 구문이 있는 JavaScript
📌 TypeScript는 JavaScript의 상위 집합
📌 TypeScript는 JavaScript의 유연성, 확장성을 유지하면서도 정적 타입 시스템의 이점을 제공하여, 동적 + 정적 타입 언어의 특성을 모두 이해하고 더 나은 개발 경험 제공
</aside>
TypeScript는 JavaScript 기반의 강력한 타입 프로그래밍 언어로 어떤 규모에서도 더 나은 도구를 제공
TypeScript는 추가적인 구문을 JavaScript에 에디터와 긴밀히 연결되는 기능을 제공함 ⇒ 에디터에서 일찍 오류를 잡을 수 있음
TypeScript 코드는 JavaScript로 변환되며, JavaScript가 실행되는 모든 곳에서 실행됨
TypeScript는 JavaScript를 이해하고 타입 추론을 사용하여 추가 코드 없이 훌륭한 도구를 제공
정적 VS 동적 프로그래밍 언어(토글) Statically typed language
- C, C#, C++, Java 등
- 개발자가 직접 변수에 들어갈 값의 형태에 따라 자료형을 지정해주어야 함
- 컴파일 시에 자료형에 맞지 않은 값이 들어있으면 컴파일 에러가 발생
Dynamically typed language
- JavaScript, Ruby, Python 등
- 개발자는 변수에 특별한 자료형을 지정하지 않은 상태로 실행 됨
- 런타임 환경에서 변수에 할당되는 값을 기반으로 변수의 자료형이 동적으로 결정/변경 됨