interface
와 type
은 대부분의 상황에서 상호 대체 가능하지만, 몇 가지 사용 사례에서는 한 가지를 선호하는 경우가 있습니다. 다음은 일반적인 상황과 해당 타입을 사용하는 경향입니다:
Interface를 사용하는 경우:
interface Person {
name: string;
age: number;
}
interface Employee extends Person {
employeeId: string;
}
const employee: Employee = {
name: 'John',
age: 30,
employeeId: '12345'
};
Type을 사용하는 경우:
type Point = {
x: number;
y: number;
};
type Color = 'red' | 'green' | 'blue';
type Person = {
name: string;
age: number;
};
type Employee = Person & {
employeeId: string;
};
const employee: Employee = {
name: 'John',
age: 30,
employeeId: '12345'
};
일반적으로, 프로젝트 내에서 interface
와 type
을 일관성 있게 사용하는 것이 좋습니다. 프로젝트 팀과의 협업이나 기존 코드베이스의 관례를 따르는 것이 중요합니다.