[typescript] 인터페이스의 기본 문법과 구조

TypeScript는 JavaScript에 정적 타입을 추가한 언어입니다. 이를 통해 코드의 안정성과 가독성을 높일 수 있으며, 인터페이스는 이러한 특징을 활용하는 데 중요한 역할을 합니다. 이번 글에서는 TypeScript 인터페이스의 기본 문법과 구조에 대해 알아보겠습니다.

인터페이스의 정의

인터페이스는 데이터의 형태를 정의하기 위한 TypeScript의 핵심 요소입니다. 다음은 인터페이스의 기본적인 형태입니다.

interface Person {
  name: string;
  age: number;
  greet: () => void;
}

위 예제에서 Person 인터페이스는 nameage 필드를 가지며, greet 메서드를 가져야 한다고 정의합니다.

선택적 필드

일부 필드가 선택적인 경우에는 ?를 사용하여 해당 필드가 존재할 수도, 존재하지 않을 수도 있음을 나타낼 수 있습니다.

interface Car {
  make: string;
  model: string;
  year?: number;
}

위 예제에서 year 필드는 선택적 필드로 정의되어 있습니다.

읽기 전용 필드

읽기 전용 필드는 readonly 키워드를 사용하여 정의할 수 있습니다.

interface Circle {
  readonly radius: number;
  readonly area: number;
}

위 예제에서 radiusarea 필드는 읽기 전용으로 선언되어 있습니다.

인터페이스 확장

인터페이스는 확장하여 다른 인터페이스를 포함할 수 있습니다.

interface Shape {
  color: string;
}

interface Square extends Shape {
  sideLength: number;
}

위 예제에서 Square 인터페이스는 Shape 인터페이스를 확장하고 있습니다.

결론

TypeScript의 인터페이스는 코드의 가독성과 안정성을 높이는 중요한 도구입니다. 이러한 특징을 활용하여 인터페이스를 정의하고 활용함으로써 유지보수성이 좋고 안정적인 코드를 작성할 수 있습니다.

더 많은 정보는 TypeScript 공식 문서를 참고할 수 있습니다.