티스토리 뷰

반응형

인터페이스란?

인터페이스는 타입스크립트에서 객체의 형태를 정의하는 방법입니다. 인터페이스를 사용하여 객체의 속성과 메서드를 정의할 수 있으며, 이를 이용하여 타입스크립트는 코드의 안정성을 높일 수 있습니다.

인터페이스의 사용

인터페이스는 다음과 같은 방법으로 사용할 수 있습니다.

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

function sayHello(person: Person) {
  console.log(`Hello, my name is ${person.name} and I am ${person.age} years old.`);
  person.greet("World");
}

const john: Person = {
  name: "John",
  age: 30,
  greet(name: string) {
    console.log(`Hello, ${name}!`);
  },
};

sayHello(john);

위 코드는 Person 인터페이스를 정의하고, sayHello 함수에서 이를 이용하여 인자로 받은 객체의 속성과 메서드를 출력하는 예시입니다.

인터페이스의 상속

인터페이스는 다른 인터페이스를 상속하여 확장할 수 있습니다. 이를 이용하여 코드의 재사용성을 높일 수 있습니다.

interface Animal {
  name: string;
  age: number;
  speak: () => void;
}

interface Dog extends Animal {
  breed: string;
}

const myDog: Dog = {
  name: "Max",
  age: 5,
  breed: "Labrador",
  speak() {
    console.log("Woof!");
  },
};

console.log(`My dog ${myDog.name} is a ${myDog.breed} and is ${myDog.age} years old.`);
myDog.speak();

위 코드는 Animal 인터페이스를 정의하고, Dog 인터페이스에서 이를 상속받아 breed 속성을 추가한 예시입니다.

인터페이스는 타입스크립트에서 객체의 형태를 정의하는 방법으로, 코드의 가독성과 유지보수성을 높일 수 있습니다. 인터페이스를 사용하여 코드의 안정성을 높이고, 재사용성을 높이는 등의 이점을 얻을 수 있습니다.

 

반응형

'타입스크립트' 카테고리의 다른 글

타입스크립트 추론 (Inference)  (0) 2023.03.16
타입스크립트 클래스  (0) 2023.03.16
타입스크립트 변수와 기본 타입  (0) 2023.03.16
TypeScript 설치 및 설정  (0) 2023.03.15
타입스크립트 소개  (0) 2023.03.15
댓글