실전 프로젝트를 제작하면서 상태관리에 대한 갈증을 느꼈다.
200여명의 서비스를 개발하고 복잡하지 않은데 redux를 통한 전역상태관리를 해야하나하는 문제점에 도달했고, 결론적으로는 기쁨님과 Recoil을 통한 최소한의 전역 상태관리 후, 전부 지역상태 관리로 리팩토링한 경험이 있다.
캠프 수료 이후 개인 공부 도중에 최신 라이브러리인 immer를 이용하여 구조가 복잡한 객체도 쉽고 짧은 코드를 사용하여 불변성을 지킬 수 있는 immer를 사용해보고 싶어 간단하게 사용해봤다
React에서는 배열 또는 객체를 업데이트할때 직접 수정하지 않고 불변성을 지켜주면서 업데이트를 해야한다. 객체는
스프레드를 사용하고 배열은 push, splice함수 대신에 filter나 map등의 함수를 사용해야한다. 리덕스에서도 이와 같은 방식으로 state는 읽기 전용으로 관리되어야한다.
참고한 벨로퍼트님의 의견은 아래와 같다.
고려해야할 부분이 생각보다 많아 실제로 활용할지는 좀 더 공부해봐야겠다.