-
728x90
리덕스의 역할
리덕스는 상태를 관리, 갱신 하고 액션이라 불리는 이벤트를 사용하기 위한 패턴이자 라이브러리이다.
리덕스를 써야하는 이유
- 리덕스는 전역 상태를 관리할 수 있게 도와줌
- 리덕스에서 제공하는 패턴과 도구를 이용해 상태가 언제, 어디서, 왜, 어떻게 변하됐는지 쉽게 이해할 수 있음
- 예측 가능하고 테스트 가능한 코드를 작성할 수 있도록 안내하고, 예상대로 작동할 것이라는 확신을 줌
언제 써야하는가?
- 장점: 공유 상태 관리를 처리하는데 도움이 됨
- 단점: 배워야할 개념과 작성해야할 코드가 더 많음. 코드에 간접 참조를 추가하고 특정 제한 사항을 따르도록 요청함.
- 그럼 언제 사용해야함?
- 많은 곳에서 많은 양의 상태가 필요할 때
- 상태가 자주 갱신될 때
- 상태를 업데이트하는 로직이 복잡할 때
- 중대형의 코드 베이스가 있으며 많은 사람들이 작업할 수 있을 때
(모든 앱에서 리덕스가 필요한 것은 아님. 작업하고 있는 탭의 특성을 충분히 생각해보고 어떤 툴을 사용하는 것이 가장 바람직한 것이지 결정하는게 좋음)
리덕스 라이브러리와 도구들
리덕스는 작은 독립형 js 라이브러리임. 그러나 일반적으로 여러 다름 패키지와 함께 사용된다.
- React-Redux
리덕스는 모든 UI 프레임워크와 통합할 수 있으며, 리액트와 가장 자주 사용됨. React-Redux는 상태의 조각을 읽고 업데이터하기 위한 액션을 전할하여 리액트 컴포넌트가 리덕스 store와 상호작용할 수 있도록 하는 공식 패키지임
- Redux Toolkit
리덕스 툴킷은 리덕스 로직을 작성할 때 권장되는 접근 방식임. 리덕스 앱을 빌드할 때 필수적이라고 생각되는 패키지와 기능을 포함함. 리덕스 툴킷은 제안된 모범 사례를 기반으로 대부분의 리덕스 작업을 단순화하고, 흔한 실수를 예방하며, 리덕스 앱을 더 쉽게 작성할 수 있도록 함
- Redux DevTools Extension
리덕스 stored dlTsms 상태의 변화 기록을 보여줌. 시간 여행 디버깅과 같은 강력한 기술을 포함해 효과적으로 앱을 디버깅할 수 있도록 해줌
내가 지금 진행중인 프로젝트에 리덕스를 도입하려는 이유는 우선 동일한 상태를 필요로 하는 곳이 많고, 중간 크기의 코드 베이스에 많은 사람들이 작업하고 있기 때문에 리덕스를 도입하고자 했다.
728x90'IT > 리액트' 카테고리의 다른 글
리덕스 용어와 개념 (0) 2022.08.16 리덕스 시작하기 (0) 2022.08.16 리액트 주요개념 - React로 사고하기 (0) 2022.01.16 리액트 주요개념 - 합성 vs 상속 (0) 2022.01.16 리액트 주요개념 - State 끌어올리기 (0) 2022.01.16