[Korean FE Article] TypeScript Branded Types로 런타임 타입 안정성 개선하기
글 링크: https://bit.ly/3Trt6d0
소개
여러분은 타입스크립트만 믿고 사용하다가 실제 런타임에서 에러를 마주친 적이 있나요? 저도 얼마 전에 게시물의 ID를 넣는 곳에 다른 ID를 넣어서 버그가 난 기억이 있습니다. 이렇듯 타입스크립트는 빌드 타임에만 타입을 체크하기 때문에 언제나 런타임에서 오류가 발생할 여지가 있습니다.
오늘 소개할 글은 이런 문제를 해결하기 위한 '브랜디드 타입(Branded Types)'을 소개하고 있으며 이를 사용해 ID와 같은 특정 값들을 명확하게 구별하거나 실수로 잘못된 값을 사용하지 않도록 안정성을 확보할 수 있습니다.
개인적으로 이 글을 읽고 타입스크립트를 사용해서 사용자의 실수를 방지할 수 있는 다양한 인사이트를 얻게 되었고 앞으로 프로젝트에 적용해 볼 예정인데요. 여러분에게도 이 글이 도움 되면 좋겠습니다!
목차
문제
Branded Types는 무엇인가?
더 나아진 Branded Type
왜 Branded Types 가 유용한가
사용 예시
커스텀 유효성 검사
도메인 모델링
API 응답과 요청
도전과제
결론