[typescript] 타입 추론과 타입 어노테이션의 차이점은 무엇인가?
타입 추론(Type Inference)
타입 추론은 TypeScript가 코드를 분석하여 해당 코드에서 변수 또는 함수의 타입을 자동으로 결정하는 기능입니다. 변수에 값을 할당하거나 함수를 정의할 때 TypeScript 컴파일러가 해당 값 또는 반환 타입을 분석하여 해당 변수 또는 함수의 타입을 추론합니다.
예를 들어:
let x = 10; // x의 타입은 자동으로 number로 추론됨
타입 어노테이션(Type Annotation)
타입 어노테이션은 개발자가 직접 변수 또는 함수의 타입을 명시적으로 지정하는 것을 말합니다. 변수 뒤에 콜론(:)을 사용하여 타입을 명시하는 방식으로 사용됩니다.
예를 들어:
let y: number = 20; // y의 타입을 명시적으로 number로 어노테이션함
차이점
- 타입 추론은 TypeScript가 코드를 분석하여 타입을 자동으로 결정하고 할당합니다.
- 타입 어노테이션은 개발자가 직접 타입을 지정하며 코드의 가독성을 높이고, 다른 개발자들이 코드를 이해하기 쉽게 합니다.
따라서, 타입 추론은 TypeScript가 자동으로 타입을 추론하고, 타입 어노테이션은 개발자가 직접 타입을 명시적으로 지정하는 것입니다.
참고 자료
- TypeScript 공식 문서: Type Inference
- TypeScript 공식 문서: Type Annotations