1. 타입 별칭의 특징
type Person = {
name: string;
age: number;
};
let seho: Person = {
name: 'seho',
age: 30,
};
- 새로운 타입을 하나 생성하는 것이 아니라, 정의된 타입에 대해 쉽게 참고하기 위해 이름을 부여하는 것
- VSCode 상으로 데이터 구조와 타입을 프리뷰로 볼 수 있음
- 타입 별칭은 확장이 불가능, 가능한 타입 별칭보다는 인터페이스로 선언해서 필요 시 확장하기
2. 인터페이스의 특징
interface Person {
name: string;
age: number;
}
let seho: Person = {
name: 'seho',
age: 30,
};
- 인터페이스를 이용해서 타입을 정의한 후, 프리뷰 상태로 인터페이스 명을 가리킴
- VSCode 상으로 데이터 구조와 타입을 프리뷰로 볼 수 없음
- mac은 command 키를 눌러 링크 형태로 해당 타입을 참조하면 볼 수 있음
- 별도의 타입을 정의한 후, 타입을 import 해와서 쓰면 해당 파일로 가서 구조를 봐야함
- 인터페이스는 확장이 가능함
- 좋은 소프트웨어는 언제나 확장이 용이해야한다는 원칙에 따라 가급적 확장가능한 인터페이스로 선언하기
참고 : 타입스크립트 입문 - 기초부터 실전까지