
타입스크립트는 자바스크립트의 슈퍼셋으로, 자바스크립트에 없는 몇 가지 기능을 추가하여 더욱 강력하고 안전한 코딩 환경을 제공한다.
타입스크립트를 쓰는 몇가지 이유에 대해 정리해보려고 한다.
정적 타이핑 : 자바스크립트는 동적 타이핑 언어로, 변수의 타입을 런타임에 결정한다.
이러한 유연성은 장점도 있지만 예상치 못한 버그를 초래할 수 있다. 반면에, 타입스크립트는
정적 타이핑을 지원하여 변수, 함수 매개변수 및 반환 값 등의 데이터 타입을 미리 지정할
수 있다. 이로 인해 개발 단계에서 오류를 사전에 잡아낼 수 있고, 코드가 더 안정적이고
예측 가능해진다.
컴파일 시간 에러 체크 : 정적 타이핑으로 인해 컴파일 시점에서 대부분의 오류를 발견할 수 있다. 이로 인해 런타인 오류를 크게 줄일 수 있다.
클래스 기반 객체 지향 프로그래밍 기능 : 클래스와 인터페이스 등 객체 지향 프로그래밍 패턴을 보다 완벽하게 지원할 수 있다. (자바스크립트는 프로토타입 기반의 객체 지향 언어)
대규모 애플리케이션 개발의 이점 : 정적 타이핑과 강력한 툴링은 코드베이스가 커짐에 따른 복잡성을 관리하는데 큰 도움을 준다.
// 함수의 매개변수와 반환값에 대한 타입을 지정
function greet(name: string): string {
return `Hello, ${name}!`;
}
// 올바른 사용: 문자열을 전달
console.log(greet("Alice")); // 출력: "Hello, Alice!"
// 잘못된 사용: 숫자를 전달하려고 시도하면 컴파일러가 오류를 발생
console.log(greet(123)); // Error: Argument of type 'number' is not assignable to parameter of type 'string'.