inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

[리뉴얼] 맛집 지도앱 만들기 (React Native & NestJS)

setScore 가 아닌 handleChangeScore 함수를 만들어 넘기는 이유가 있을까요?

해결된 질문

137

장해리

작성한 질문수 1

0

 

안녕하세요! 강의 너무 잘 듣고 있습니다. 만들면서 따라가다 보니 에러가 나거나 하지는 않았지만 궁금한 점이 생겨서 질문남깁니다. 이번 강의에서 ScoreInput 컴포넌트에 전달하는 onChangeScore 함수로 handleChangeScore 를 정의해서 넘기셨는데, 사실 이 함수가 하는 일은 현재 setScore를 하는 것 뿐이라 그냥 setScore 함수를 넘겨도 되지 않는지 의문이 들어서요. 혹여 그렇게 했을 경우 문제가 되거나 하는 부분이 있다면 말씀 부탁드립니다. 감사합니다!

react-native typescript nestjs react-query zustand

답변 2

1

Kyo

저는 핸들러함수로 전달하는것을 선호해서 그렇게했는데, setState를 직접 사용해도 됩니다!

0

인프런 AI 인턴

안녕하세요, 인프런 AI 인턴입니다.

장해리님께서 강의를 들으시면서 이해가 가지 않는 부분에 대해 질문해 주셔서 감사합니다. 질문하신 내용은 setScore 대신 handleChangeScore 함수를 만들어서 사용하는 이유에 대한 것입니다. 이와 비슷한 질문은 많은 개발자들이 하시는 질문 중 하나입니다.

핸들러 함수를 만드는 이유

  1. 확장성: handleChangeScore 함수는 확장 가능성을 제공합니다. 현재는 단순히 setScore만 호출하지만, 나중에 상태 변경 이외에 다른 작업(예: 로그 기록, 추가적인 상태 업데이트 등)을 해야 할 경우 함수 내에 로직을 추가할 수 있습니다.

  2. 가독성: 특정 로직을 함수로 만들어 사용하면 코드가 더 직관적이 됩니다. handleChangeScore라는 함수명은 해당 함수가 수행하는 작업에 대한 명확한 설명이 될 수 있으며, 여러 곳에서 사용할 경우 중복을 줄일 수 있습니다.

  3. 디버깅 및 유지보수: 문제가 발생했을 때, 관련 로직이 함수로 분리되어 있다면 디버깅이 더 쉽습니다. 이후에 코드베이스가 확장되었을 때 유지보수가 용이합니다.

관련 질문 및 답변 링크

이와 관련된 더 구체적인 사례는 아래의 질문에서 확인할 수 있습니다:

만약 직접 setScore를 전달해도 현재는 문제 없이 동작할 수 있겠지만, 위의 이유들로 인해 일반적으로를 함수로 명확히 정의하여 사용하는 것이 좋은 코딩 습관입니다.

저는 질문자님의 이해를 돕고자 유사한 토픽에 대해 간단히 설명드렸으며, 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

react-native-screens 버전 호환 문제

2

153

1

안드로이드 실행 중 Drawer네비게이션과 MapView 성능 문제

0

103

2

해당 강의 부분은 실제 활용하기에 부족해 제가 해결한 방법입니다.

0

96

1

소스코드가 강의 순서랑 다른가요?

0

72

2

현재 Windows에서 VsCode로 작업 중인데 추후에 IOS도 가능하게 하려면

0

115

2

react-native-fast-image는 react 19 버전에서 설치가 안되나요?

0

209

2

SQL Shell의 역할이 무엇인가요?

0

91

1

혹시 해당 강의에서invalidateQueries를 사용한 이유가 있을까요?

0

79

2

빠르게 실행해보고싶습니다.

0

82

1

강의 수강 순서 관련

0

70

1

애뮬레이터 실행 방법

0

99

2

무료 Apple ID로 실기기 테스트 가능한가요?

0

90

2

ios 실기기 연결

0

70

2

npm run ios에러

0

74

1

10월 삭제 예정인 강의는 이유를 알 수 있을까요?

0

101

1

캘린더 개발 후에 navigation 에 대해서 궁금한 점이 있습니다.

0

51

1

안드로이드 위치 권한 이슈 2가지 문의

0

71

1

지도가 보이려면 음.. 작성해주신 스타일과 다르게

0

74

0

제대로 설치한거같은데 안드로이드랑 ios 둘다 앱실행이 안되는것같아요

0

83

3

강의 내용을 보면 전체적으로 function 함수 키워드를 사용하시는데

0

69

2

강의 3-9 에서 useGetRefreshToken 훅 안에 즉시 함수로 처리하는 이유가 궁금합니다!

0

82

2

사내에서 figma.com 업로드 안되나요?

0

96

1

AWS EC2 + RDS 설정

0

85

2

안드로이드 안켜집니다.

0

91

2