[typescript] 프로퍼티 셋터/게터를 사용한 계산된 프로퍼티 생성
TypeScript에서는 클래스 내에서 프로퍼티의 값을 계산할 수 있도록 셋터(setter)와 게터(getter)를 사용할 수 있습니다. 이를 통해 데이터를 보다 효과적으로 다룰 수 있으며, 코드를 더 직관적으로 관리할 수 있습니다.
프로퍼티 셋터/게터를 사용하여 계산된 프로퍼티를 만드는 방법을 알아보겠습니다.
셋터/게터 구문
프로퍼티 셋터는 값을 설정할 때 호출되며, 프로퍼티 게터는 값을 가져올 때 호출됩니다. 이를 사용하면 프로퍼티에 접근할 때 추가 동작을 수행할 수 있습니다.
다음은 TypeScript에서 셋터/게터를 사용한 계산된 프로퍼티의 구문입니다.
class Circle {
private _radius: number = 0;
get radius(): number {
return this._radius;
}
set radius(value: number) {
if (value < 0) {
throw new Error('Radius cannot be negative');
}
this._radius = value;
}
get area(): number {
return Math.PI * this._radius ** 2;
}
}
const circle = new Circle();
circle.radius = 5;
console.log(circle.area); // Output: 78.54
위 예제에서 Circle
클래스는 radius
프로퍼티에 대한 셋터와 게터를 정의하고 있습니다. 또한, area
프로퍼티를 게터를 통해 계산하고 있습니다.
이점
프로퍼티 셋터/게터를 사용하여 계산된 프로퍼티를 만드는 것에는 여러 이점이 있습니다. 코드의 가독성과 유지 보수성을 높여줄 뿐만 아니라, 데이터의 유효성을 보장하는 등의 장점이 있습니다.
프로퍼티 셋터/게터를 사용하는 것은 객체지향 프로그래밍의 기본 개념 중 하나이며, TypeScript에서 이를 효과적으로 활용할 수 있습니다.
프로퍼티 셋터/게터를 사용하여 계산된 프로퍼티를 생성하는 방법에 대해 알아보았습니다. 이를 통해 TypeScript 코드의 유연성과 가독성을 향상할 수 있을 것입니다.
참고 자료
-
[Microsoft TypeScript Handbook](https://www.typescriptlang.org/docs/handbook/) -
[MDN Web Docs Classes](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Classes)