[typescript] 타입 가드와 가변성 문제를 피하기 위한 코드 리뷰 가이드라인
코드 리뷰는 소프트웨어 개발에서 매우 중요한 부분입니다. TypeScript에서는 타입 가드 및 가변성 문제를 피하기 위한 코드 리뷰 가이드라인을 만들 수 있습니다. 이를 통해 더욱 안정적이고 확장 가능한 코드를 작성할 수 있습니다.
1. 타입 가드 사용하기
타입 가드는 TypeScript 코드에서 특정 변수나 속성이 특정한 타입을 갖는지 확인하기 위해 사용됩니다. 이를 통해 코드의 안전성을 높일 수 있습니다. 아래는 타입 가드를 사용한 예시 코드입니다.
function isNumber(value: any): value is number {
return typeof value === 'number';
}
if (isNumber(input)) {
// input이 number 타입일 때 처리하는 로직
} else {
// input이 number 타입이 아닐 때 처리하는 로직
}
2. 읽기 전용 속성 사용하기
가변성 문제를 피하기 위해 읽기 전용 속성을 사용하는 것이 좋습니다. 객체의 속성이나 배열을 수정하지 않을 경우, 해당 속성을 읽기 전용으로 정의하여 실수를 방지할 수 있습니다. 아래는 읽기 전용 속성을 사용한 예시 코드입니다.
interface Point {
readonly x: number;
readonly y: number;
}
let p: Point = { x: 10, y: 20 };
p.x = 5; // 에러 발생
3. 타입 불변성 유지하기
객체 또는 배열의 불변성을 유지하는 것은 타입 안정성을 높일 수 있습니다. Object.freeze
나 ReadonlyArray
등을 사용하여 객체나 배열의 불변성을 유지하는 것이 좋습니다. 아래는 타입 불변성을 유지하는 예시 코드입니다.
const arr: readonly number[] = [1, 2, 3];
arr.push(4); // 에러 발생
결론
타입 가드 및 가변성 문제를 피하기 위한 코드 리뷰 가이드라인을 준수하면 TypeScript 코드의 안정성을 크게 향상시킬 수 있습니다. 이를 통해 유지보수가 쉬우며 확장 가능한 안정적인 코드를 작성할 수 있습니다.
참고문헌:
- TypeScript 공식 문서: https://www.typescriptlang.org/docs/