본문 바로가기
개발언어/TypeScript

type과 interface 차이

by Ligion 2021. 4. 16.

 

타입과 인터페이스는 TypeScript의 버전이 올라가면서 함께 변화해갔다.

처음에는 타입의 기능이 약해서 인터페이스를 쓰라고 권장했지만

지금은 타입의 기능이 많이 강화되었는데 인터페이스와 사용성이 모호한 시점인듯하다.

그래서 역할을 정확히 나누는것이 좋다.

 

Interface

  • Class의 규격, Object 간 소통할 때 쓰는 규약
  • 이 인터페이스를 통해 구현해야하는 클래스가 있을 때
  • 재정의할 수 있다. (let처럼)

Type

  • 데이터의 타입 정의
  • 구현할 목적이 아니라 데이터를 담을 목적으로 사용
  • 재정의 할 수 없다. (const처럼)
  • type alias를 통해 원시타입, 배열, 유니온 타입 등을 별칭화 할 수 있다.

'개발언어 > TypeScript' 카테고리의 다른 글

컴파일러(compiler) 설정 방법  (0) 2021.04.16
유틸리티 타입 (Utility Types)  (0) 2021.04.16
제네릭 <Generic>  (0) 2021.04.15
타입스크립트의 객체지향  (0) 2021.04.15
타입 단언 (Type Assertions)  (0) 2021.04.12

댓글