[typescript] 정적 메서드와 인스턴스 메서드를 사용하여 데이터 저장하기

타입스크립트(TypeScript)를 사용하면 정적(static) 메서드와 인스턴스(instance) 메서드를 사용하여 데이터를 저장하고 관리할 수 있습니다. 이 블로그 포스트에서는 이 두 가지 메서드를 활용하여 데이터를 효과적으로 다루는 방법에 대해 알아보겠습니다.

정적 메서드

정적 메서드는 클래스의 인스턴스를 생성하지 않고도 호출할 수 있는 메서드입니다. 이를 통해 데이터를 저장하고 관리할 수 있습니다.

다음은 DataManager 클래스의 정적 메서드 예시입니다.

class DataManager {
  private static data: Array<any> = [];

  static addToData(newData: any) {
    this.data.push(newData);
  }

  static getData() {
    return this.data;
  }
}

위 코드에서 addToData 메서드는 새로운 데이터를 data 배열에 추가하고, getData 메서드는 data 배열을 반환합니다.

인스턴스 메서드

인스턴스 메서드는 클래스의 인스턴스를 생성한 후에 호출할 수 있는 메서드입니다. 이를 통해 특정 인스턴스에 대한 데이터를 관리할 수 있습니다.

다음은 Data 클래스의 인스턴스 메서드 예시입니다.

class Data {
  private data: Array<any> = [];

  addToData(newData: any) {
    this.data.push(newData);
  }

  getData() {
    return this.data;
  }
}

위 코드에서 addToData 메서드는 새로운 데이터를 data 배열에 추가하고, getData 메서드는 data 배열을 반환합니다. 이때, data 배열은 클래스의 각 인스턴스마다 별도로 관리됩니다.

활용 예시

이제 정적 메서드와 인스턴스 메서드를 함께 사용하여 데이터를 저장하고 관리하는 예시를 살펴보겠습니다.

const data1 = new Data();
const data2 = new Data();

data1.addToData("Data 1");
data2.addToData("Data 2");

DataManager.addToData("Common Data");

console.log(data1.getData()); // ["Data 1"]
console.log(data2.getData()); // ["Data 2"]
console.log(DataManager.getData()); // ["Common Data"]

위 코드에서는 Data 클래스의 인스턴스를 생성하여 각각의 데이터를 추가하고, DataManager 클래스의 정적 메서드를 사용하여 공통 데이터를 추가했습니다. 그 결과, 각 인스턴스는 개별적으로 데이터를 관리하고, DataManager 클래스는 공통 데이터를 관리합니다.

이처럼 정적 메서드와 인스턴스 메서드를 적절히 활용하면 데이터를 효과적으로 관리할 수 있습니다.

위 내용은 TypeScript의 클래스와 메서드에 대한 기본적인 내용을 다루고 있으며, 더 자세한 내용은 TypeScript 공식 문서를 참고하시기 바랍니다.