안녕하세요. 타입스크립트에서 타입 별칭과 유틸리티 타입에 대해서 질문을 주셨군요. 둘을 비교하자고 하면, 사실 둘의 용도가 다릅니다. 그래서 용도나 가독성을 비교하기전에 해당 기술이 어디에 쓰이는지 알고 사용하면 돼요! 그래서 취향 차이라기보다는 적재적소에 잘 쓰면 된다. 가 답이 될 수 있겠네요. Type alias는 기존 타입에 다른 이름을 부여하는 것이고, utility type은 기존 타입을 기반으로 새로운 타입을 생성하는 것입니다. 예를 들어, type Alias = string; 이렇게 하면 string이라는 타입에 Alias라는 이름을 부여할 수 있습니다. 단순히 타입 별칭은 위의 기능을 하고 있어요. Type말고도 interface로 타입을 지정해줄 수도 있는데 자세한 것은 아래 링크에서 확인해볼 수 있을 것 같네요. https://joshua1988.github.io/ts/guide/type-alias.html#%ED%83%80%EC%9E%85-%EB%B3%84%EC%B9%AD-type-aliases 또한 유틸리티 타입 같은 경우는 내부에 어떻게 구현이 되어있는지 알 수 있어요. 제가 사진으로 첨부드린 것을 보면 유틸리티 타입 중에 하나인 Required 타입이 있는데 Required 타입은 제네릭으로 들어온 타입을 순회하면서 전부 optional(? 물음표를 붙이면 옵셔널이 돼요.)을 제외시켜주는 것을 볼 수 있어요. 저런식으로 구현을 다 볼 수 있어요. 그래서 유틸리티 타입은 간단하게 말하면 우리가 개발을 하다보면 유틸 함수를 만드는데 그런 것 처럼 타입스크립트 팀에서 자주쓰이는 것들을 함수처럼 빼놓은 것이라고 볼 수 있어요. 만약에 타입스크립트를 조금 더 잘 쓰고 싶다. 다양한 유틸 함수를 나도 만들어보고 싶다. 그러면 https://github.com/type-challenges/type-challenges 해당 레파지토리 참고하셔서 문제를 하나씩 풀어보시면 타입스크립트에 대한 이해도가 조금 올라갈 수 있을 것 같아요. 감사합니다.

다음 내용이 궁금하다면?

또는

이미 회원이신가요?

2023년 1월 22일 오전 2:10

댓글 1