[typescript] 인터페이스를 활용한 객체의 형식 체크

TypeScript는 정적 형식을 갖는 JavaScript를 위한 현대적인 프로그래밍 언어입니다. JavaScript에 비해 강력한 형식 시스템을 제공하여 개발자가 코드의 안정성과 유지보수성을 높일 수 있습니다.

이번 포스트에서는 TypeScript의 핵심 기능 중 하나인 인터페이스를 활용하여 객체의 형식을 체크하는 방법에 대해 알아보겠습니다.

인터페이스란?

인터페이스는 TypeScript에서 객체의 형식을 정의하기 위한 일종의 계약(Contract)입니다. 객체가 인터페이스의 형식을 따르기로 약속하면 해당 객체는 인터페이스가 요구하는 속성과 메서드를 구현해야 합니다. 이를 통해 코드의 가독성과 유지보수성을 높일 수 있습니다.

아래는 Person 인터페이스의 예시입니다.

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

인터페이스를 통한 객체의 형식 체크

이제 위에서 정의한 Person 인터페이스를 활용하여 객체의 형식을 체크해보겠습니다.

function printInfo(person: Person) {
  console.log(`Name: ${person.name}, Age: ${person.age}`);
  person.greet();
}

printInfo 함수는 Person 인터페이스를 따르는 객체를 매개변수로 받아들입니다. 이를 통해 이 함수를 호출할 때는 반드시 name, age, 그리고 greet 속성을 갖는 객체를 전달해야 합니다.

const person1 = {
  name: 'Alice',
  age: 30,
  greet() {
    console.log('Hello, nice to meet you!');
  }
};

printInfo(person1); // Name: Alice, Age: 30

위와 같이 person1 객체는 Person 인터페이스를 따르므로 printInfo 함수에서 정상적으로 처리됩니다.

요약

TypeScript의 인터페이스를 활용하면 객체의 형식을 명확히 정의하고 체크할 수 있으며, 이는 코드의 안정성을 높이고 실수를 방지하는 데 도움이 됩니다.

이번 글에서는 인터페이스의 기본적인 개념과 활용법을 살펴보았습니다. TypeScript에서는 인터페이스를 통해 형식을 정의하는 방법 외에도 다양한 형식 체크 방법을 제공하므로, 해당 내용도 함께 찾아보시길 권장합니다.

더 자세한 내용은 TypeScript 공식 문서를 참고하시기 바랍니다.