[typescript] 인터페이스 확장을 사용하여 기존 인터페이스를 확장하는 방법

TypeScript에서는 기존의 인터페이스를 확장하여 새로운 인터페이스를 만들 수 있습니다. 이를 통해 코드 재사용성을 높이고 유지보수성을 향상시킬 수 있습니다.

인터페이스를 확장하는 방법에 대해 알아보겠습니다.

기존 인터페이스

먼저, 기존의 인터페이스를 정의합니다. 예를 들어, 다음과 같은 Person 인터페이스가 있다고 가정해봅시다.

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

인터페이스 확장

이제, 기존의 Person 인터페이스를 확장하여 새로운 Employee 인터페이스를 만들어보겠습니다. extends 키워드를 사용하여 기존 인터페이스를 확장할 수 있습니다.

interface Employee extends Person {
  role: string;
  companyId: number;
}

위의 예제에서 Employee 인터페이스는 Person 인터페이스를 확장하고 있습니다. 따라서 Employee 인터페이스는 nameage 필드를 포함하며, 추가로 rolecompanyId 필드를 가지게 됩니다.

사용 예

이제, 확장된 Employee 인터페이스를 사용하여 객체를 생성할 수 있습니다.

const employeeData: Employee = {
  name: "John Doe",
  age: 30,
  role: "Software Engineer",
  companyId: 1234
};

이렇게 함으로써, 기존의 인터페이스를 확장하여 새로운 인터페이스를 만들고 사용하는 방법에 대해 알아보았습니다.

인터페이스의 확장은 TypeScript에서 코드를 추상화하고 모듈화하는 데 유용하며, 객체의 구조를 명확히 정의함으로써 코드의 가독성을 높일 수 있습니다.

참조: TypeScript Handbook - Extending Interfaces