개발자
지난 주에 면접을 보고 왔는데 이런 질문을 받았습니다... Q) redux는 하나의 store를 가지고 recoil은 여러 개의 atom을 가지는데 여러 개의 저장소를 가지는 것과 하나의 저장소를 가지는 것에 대한 장단점이 어떤 것이 있을까요? 각 저장소 별로 역할을 구분할 수 있는 장점이 있다고 말씀드리긴 했는데 좋은 답변은 아니었던 것 같아요ㅠㅠ 위 질문에 대해 어떻게 답변드리면 좋은 답변이었을까요?
답변 2
인기 답변
안녕하세요:) Q) redux는 하나의 store를 가지고 recoil은 여러 개의 atom을 가지는데 여러 개의 저장소를 가지는 것과 하나의 저장소를 가지는 것에 대한 장단점이 어떤 것이 있을까요? 위의 질문에 대한 정확한 답변은 아니지만 Redux와 Recoil의 전반적인 장단점을 적어봤습니다! (작성자님이 React를 사용한다고 가정하고 답변했습니다.) Redux 장점: - 단일 스토어를 사용하고 있기 때문에 디버깅에 용이. Redux devtools와 같은 유명한 디버깅 툴이 있음. - 다양한 레퍼런스 단점 - 단일 스토어는 하나의 javascript 객체이기 때문에 상태가 변경될 때마다 많은 컴포넌트가 다시 렌더링됨. - 스토어, 액션, 리듀서 등 하나의 상태를 전역으로 관리하기 위해 많은 코드가 필요함. (redux toolkit을 사용하면 코드량을 줄일 수 있음) - Redux는 React 라이브러리가 아니기 때문에 React의 내부 스케줄러에 접근할 수 없음. 동시성 모드 지원이 어려울 수 있다. 참고) https://ui.toast.com/weekly-pick/ko_20200616 Recoil 장점: - 인터페이스가 간단. useState 사용하듯이 코드를 작성하면 됨. - React에서 유지 보수하는 라이브러리 React와 호환이 좋음. 단점: - 낮은 버전 (Redux보다 안정적이지 않을 수 있음), Redux에 비해 적은 레퍼런스 결론: - 리코일을 사용할 때의 큰 장점은 비동기 작업 처리, 상태 관리를 위한 간단한 인터페이스 인 것 같습니다. - 리덕스는 다양한 레퍼런스와 안정성으로 큰 규모의 프로젝트에 적합하다고 여겨져 왔는데요, 토스 등 몇 기업에서 상태관리로 recoil을 사용하는 것으로 봤을 때 리코일도 개발자 경험과 사용자 경험을 고려한 충분히 좋은 선택이 될 수 있을 것 같습니다. ref: https://ui.toast.com/weekly-pick/ko_20200616 https://www.imaginarycloud.com/blog/recoil-vs-redux/
익명
작성자
2023년 03월 22일
친절한 답변 감사합니다!!
지금 가입하면 모든 질문의 답변을 볼 수 있어요!
현직자들의 명쾌한 답변을 얻을 수 있어요.
이미 회원이신가요?
지금 가입하면 모든 질문의 답변을 볼 수 있어요!