개발자

타입스크립트에서 리턴타입을 어디까지 명시해야할까요?

2024년 02월 07일조회 244

안녕하세요 nest 프레임워크로 부트캠프에서 공부중인 학생입니다. 타입스크립트를 사용해서 진행하고 있는데 nest는 메서드 리턴타입을 유추해주기 때문에 명시할 필요는 없다고 합니다. 현업에서는 어떻게 사용하는게 정석인가요? 사진은 service에 메서드입니다. 모든 계층에서 메서드의 리턴타입을 명시해야한는건지 궁금합니다.

이 질문이 도움이 되었나요?
'추천해요' 버튼을 누르면 좋은 질문이 더 많은 사람에게 노출될 수 있어요. '보충이 필요해요' 버튼을 누르면 질문자에게 질문 내용 보충을 요청하는 알림이 가요.

답변 1

인기 답변

강병진님의 프로필 사진

질문하신 부분은 정답이 있다기보다는 컨벤션의 영역인 것 같아요. 팀에서 추구하는바사 무엇인지가 관건일 것 같습니다. 1. 타입을 별도로 명시하지 않아도 알 수 있으니 우리는 간결한 코드를 선호하니까 굳이 작성하지 말자 2. 타입을 별도로 명시하지 않아도 알 수 있지만 우리는 굳이 마우스를 올리거나 하지 않아도 한눈에 타입을 파악할 수 있게 명시적으로 작성하자. 이런 느낌으로 나눠질 수 있다고 생각합니다. 개인적으로는 후자를 선호하는데요, 리턴타입을 미리 선언해두고 코드를 작성하는 것이 내가 원하는 타입의 값을 리턴할 수 있도록 코드를 작성할 수 있도록 도와준다고 생각합니다.

지금 가입하면 모든 질문의 답변을 볼 수 있어요!

현직자들의 명쾌한 답변을 얻을 수 있어요.

또는

이미 회원이신가요?

AI 답변
커리어리 AI 봇 프로필 이미지

커리어리 AI 봇

GPT가 달아주는 답변입니다.

2024년 02월 07일

타입스크립트를 사용하는 이유 중 하나는 개발 중 발생할 수 있는 타입 관련 오류를 최소화하고, 코드의 품질을 높이기 위함입니다. 그래서 리턴 타입을 명시하면 다른 사람들이 코드를 이해하기 쉬워지고, 결과적으로 협업에 유리합니다. 하지만, TypeScript가 자동으로 타입을 추론할 수 있음에도 불구하고 모든 함수와 메서드의 리턴타입을 명시적으로 작성하는 건 굳이 필요하지 않습니다. 아래와 같은 상황에서 리턴타입을 명시해주는 것이 좋습니다: 1. 복잡한 로직으로 인해 TypeScript의 타입 추론이 제대로 동작하지 않거나 명확하지 않은 경우 2. 해당 함수나 메서드가 라이브러리/프레임워크에서 외부로 공개되는 API인 경우. 3. 소프트웨어 개발 팀 내에서 스타일 가이드로 정해진 경우 따라서 현업에서는 상황에 따라 다르지만, 일반적으로 위의 기준에 따라 리턴타입을 명시합니다. Nest.js 등의 프레임워크에서 반환타입을 유추하는 경우도 있지만, 이는 프레임워크 내부에서 처리하는 것이며 사용자가 작성하는 부분에 대해서는 여전히 타입을 명시하는 것이 좋습니다. 그러니까, 이 규칙을 따르면 생산성과 코드 읽기 쉬움 사이의 균형을 유지할 수 있습니다.

목록으로

지금 가입하면 모든 질문의 답변을 볼 수 있어요!