프론트엔드 개발 · 중급
React에서 상태 관리 라이브러리를 사용하는 이유는 무엇인가요?
힌트 · prop drilling 문제와 전역 상태 관리의 필요성을 설명해보세요.
상태컴포넌트props전역유지보수
모범답안
React에서 상태 관리 라이브러리를 사용하는 주된 이유는 컴포넌트 간의 상태 공유와 관리를 효율적으로 하기 위해서입니다.
React는 단방향 데이터 흐름을 가지지만, 앱 규모가 커질수록 props를 통해 데이터를 전달하는 과정이 복잡해지는 "prop drilling" 문제가 발생할 수 있습니다. 이 경우, 상태 관리 라이브러리를 사용하면 특정 컴포넌트에서 상태를 변경했을 때, 관련된 다른 컴포넌트들이 자동으로 업데이트되도록 할 수 있습니다.
또한, 앱 전체에서 공유해야 하는 전역 상태(예: 사용자 인증 정보, 테마 설정 등)를 관리하는 데 유용합니다. Redux, Zustand, Recoil과 같은 라이브러리는 전역 상태를 중앙 집중식으로 관리하고, 예측 가능한 방식으로 상태 변화를 추적할 수 있도록 도와줍니다. 결과적으로 코드의 유지보수성과 테스트 용이성을 높일 수 있습니다.
읽었다면, 이제 직접 답해볼 차례예요
패스잇 앱에서 이 질문에 말로 답하면 AI가 꼬리질문까지 이어가며 1:1 코칭합니다.
함께 보는 React 면접 질문
- props와 state의 차이점은 무엇인가요? 각각 누가 소유하고 변경할 수 있는지 함께 설명해주세요.
- React에서 props는 왜 읽기 전용(read-only)이어야 하나요? 자식 컴포넌트에서 props를 직접 수정하면 어떤 문제가 생기나요?
- React의 useEffect Hook의 의존성 배열(dependency array)은 어떻게 동작하나요?
- React의 useState와 useReducer의 차이점과 사용 기준은 무엇인가요?
- React의 useCallback과 useMemo의 차이점과 사용 시 주의사항은?
- React에서 컴포넌트 리렌더링이 발생하는 조건과 최적화 방법에 대해 설명해주세요.