타입 별칭(Type Alias)과 Interface의 차이
두 가지 모두 데이터의 타입을 정의하는 문법이지만, 목적이 약간 다릅니다. 실무에서는 객체의 형태를 정의할 때는 가급적 interface를 쓰고, 특정 타입 덩어리에 단순히 별명(Nickname)을 붙이고 싶을 때 type을 사용하는 것이 국룰(컨벤션)입니다.
// 1. 타입 별칭 (type 키워드): 이퀄(=)을 사용하여 이름을 붙임
type Point = {
x: number;
y: number;
};
// 별칭은 객체뿐만 아니라, 원시값, 유니온 등 모든 것에 이름표를 붙일 수 있음!
type ID = string | number;
// 2. 인터페이스 (interface 키워드): 이퀄(=) 없이 바로 중괄호
interface Point2D {
x: number;
y: number;
}
// 인터페이스는 오직 "객체"의 형태만 정의할 수 있습니다.