[typescript] 타입 별칭과 인터페이스를 사용하여 객체 타입 정의하기

타입스크립트는 JavaScript에 타입을 추가하는 오픈 소스 언어입니다. 타입스크립트로 객체의 타입을 정의하는 방법에는 ‘타입 별칭’과 ‘인터페이스’가 있습니다. 이러한 기능들을 사용하여 객체의 구조를 명시적으로 정의할 수 있습니다.

타입 별칭(Type Aliases)

타입 별칭은 새로운 타입을 정의하는 방법입니다. 기존의 타입이나 인터페이스를 기반으로하여 새로운 타입을 만들 수 있습니다. 타입 별칭은 type 키워드를 사용하여 정의하며, 필요한 속성을 지정하여 타입을 선언합니다.

type Person = {
  name: string;
  age: number;
};

let person: Person = {
  name: "John",
  age: 30
};

위의 예제에서 Person이라는 타입 별칭을 정의하고, 이를 사용하여 person 객체를 선언하였습니다.

인터페이스(Interfaces)

인터페이스는 객체의 구조를 정의하는 방법 중 하나입니다. interface 키워드를 사용하여 새로운 인터페이스를 선언할 수 있습니다. 인터페이스는 객체의 속성과 타입을 명시하여 구조를 정의합니다.

interface Person {
  name: string;
  age: number;
}

let person: Person = {
  name: "John",
  age: 30
};

위의 예제에서 Person이라는 인터페이스를 정의하고, 이를 사용하여 person 객체를 선언하였습니다.

타입 별칭 vs. 인터페이스

타입 별칭과 인터페이스는 비슷한 기능을 제공하지만, 몇 가지 차이가 있습니다. 타입 별칭은 객체, 유니언, 튜플 및 기타 타입에 이름을 지정하는 데 사용되며, 인터페이스는 주로 객체의 구조를 정의하는 데 사용됩니다. 또한, 타입 별칭은 확장이 불가능하지만, 인터페이스는 확장이 가능합니다.

결론

타입 별칭과 인터페이스는 객체의 타입을 정의하는 강력한 도구입니다. 이러한 기능들을 사용하여 코드의 가독성을 향상시키고, 타입 안정성을 유지할 수 있습니다.

참고 문헌: