패스잇
모바일 개발 · 중급

React Native 애플리케이션에서 `Context API`와 `Redux` (또는 MobX와 같은 전역 상태 관리 라이브러리)의 차이점을 설명하고, 각각 어떤 상황에 더 적합하다고 판단하시나요?

힌트 · Context API는 가벼운 상태 공유에 적합하며, Redux는 복잡하고 대규모 애플리케이션의 예측 가능한 상태 관리에 유리합니다.

Context APIRedux전역 상태 관리복잡성성능 최적화

모범답안

네, React Native에서 Context API와 Redux는 모두 전역 상태 관리를 위한 도구이지만, 사용 목적과 복잡성에서 차이가 있습니다.

Context API는 애플리케이션 내에서 데이터를 공유하기 위한 React의 내장 기능입니다. 사용법이 비교적 간단하고, 작은 규모의 애플리케이션에서 전역적으로 필요한 설정 정보나 테마 정보 등을 공유할 때 유용합니다. 하지만 Context를 사용하는 컴포넌트가 많아질수록 성능 문제가 발생할 수 있고, 상태 변화 추적이 어렵다는 단점이 있습니다.

반면 Redux는 더 강력하고 예측 가능한 상태 관리를 위한 라이브러리입니다. 액션, 리듀서, 스토어라는 명확한 구조를 통해 상태 변화를 예측 가능하게 만들고, 미들웨어를 통해 비동기 작업 처리나 로깅 등의 기능을 추가할 수 있습니다. 하지만 설정이 복잡하고, 작은 변화에도 많은 코드를 작성해야 한다는 단점이 있습니다. 따라서 애플리케이션의 규모가 크고, 상태 관리가 복잡하며, 여러 컴포넌트 간의 데이터 흐름이 빈번할 때 Redux를 사용하는 것이 더 적합하다고 생각합니다.

읽었다면, 이제 직접 답해볼 차례예요

패스잇 앱에서 이 질문에 말로 답하면 AI가 꼬리질문까지 이어가며 1:1 코칭합니다.

함께 보는 React Native 면접 질문

← React Native 면접 질문 전체 보기