개발자
저희 회사의 경우 유효성 검증 라이브러리를 사용하고 있지는 않지만 사용하면 유용하고 오류가 줄어들 것 같아서 질문드립니다! 실무에서 Zod 또는 Zod와 비슷한 런타임 유효성 검증 라이브러리를 많이 사용하시나요? 혹시 사용하셨다면 사용하시기 전과 어떤 점에서 좋았고 어떤 점에서 좋지 않았는지 궁금합니다!
답변 1
저희는 zod를 모든 곳에서 쓰고 있지는 않지만, 일부분에서 사용 중이고 적용에 대한 논의는 꾸준히 있어왔어요. 가장 최근에 있었던 시도는 openApi 스펙에 따라 API 명세를 만들고, 그걸 바탕으로 API / Type 을 만들면서 zod를 유효성 검증을 위해 함께 생성하는 방향이었는데요. 이 시도는 명세를 기반으로 코드를 생성하는 과정에서 매끄럽게 진행되지 않아 일단 중단된 상태입니다. 이와 별개로 zod에 대한 필요성 역시 꾸준히 나오고 있어요. 타입을 지정한다고 하더라도 그 타입에 맞게 데이터가 들어올 것이라는 "보장"이 없기도 하고(undefined를 참조하는 에러가 발생할 수 있는...), 보장이 없으니 optional하게 타입을 선언하면, 오히려 타입이 무의미해지는 것 같더라고요. 저는 타입을 좀 더 견고하게 보장할 수 있다는 것(누락된 경우 기본값을 지정해줌으로써)이 개인적으로는 가장 크게 느끼는 장점인 것 같아요. 한번에 모든 API에 zod를 붙이고 있지는 않고, 새로 추가되는 경우에만 활용하고 있는데 그런 부분에서 헷갈릴 여지가 있다는 것 외에는 개인적으로는 만족하며 사용하고 있습니다.
김준영
작성자
프론트엔드 개발자 • 2023년 08월 07일
타입을 좀 더 견고하게 보장할 수 있다고 하신 것에 공감합니다. 좋은 답변 감사합니다!👍
지금 가입하면 모든 질문의 답변을 볼 수 있어요!
현직자들의 명쾌한 답변을 얻을 수 있어요.
이미 회원이신가요?
지금 가입하면 모든 질문의 답변을 볼 수 있어요!