Home [Typescript] 타입 별칭(Alias)과 인터페이스(Interface)
Post
Cancel

[Typescript] 타입 별칭(Alias)과 인터페이스(Interface)

이번 글에서는 타입스크립트에 유사한 타입 별칭과 인터페이스에 대해 알아보고 그 둘의 차이점에 대해 알아보자.

타입 별칭 (Type Alias)


타입 별칭은 새로운 타입을 생성한다는 개념이라기 보다는 정의한 타입에 대해 쉽게 참고할 수 있도록 이름을 부여한 것이다. 타입 별칭은 type 키워드를 사용하여 선언할 수 있다.

1
2
3
4
type Person = {
	name: string,
	age: number
}

타입 별칭을 타입으로 지정해둔 변수의 타입에 마우스를 올리면 Vscode 개발툴에서는 다음과 같이 보여준다.

Untitled

인터페이스 (Interface)


타입 인터페이스는 여러가지 타입을 갖는 프로퍼티로 이루어진 새로운 타입을 정의하는 것과 유사하다 인터페이스는 interface 키워드를 사용하여 선언할 수 있다.

1
2
3
4
interface Person {
	name: string,
	age: number
}

인터페이스 타입으로 지정해둔 변수의 타입에 마우스를 올리면 Vscode 개발툴에서는 다음과 같이 보여준다.

Untitled

보통 별도의 파일에 필요한 인터페이스를 선언한 후 해당 인터페이스가 필요한 파일에서 인터페이스를 import해와서 사용한다.

타입 별칭과 인터페이스의 차이점


타입 별칭과 인터페이스의 가장 큰 차이점은 확장성의 유무이다. 타입 별칭은 확장이 불가능하고, 인터페이스는 extends 키워드를 통해 확장이 가능하다.

좋은 소프트웨어는 확장이 용이해야하기 때문에 가급적이면 확장이 가능한 인터페이스를 사용하는 것이 더 좋다 !!

This post is licensed under CC BY 4.0 by the author.