지금까지 너무 리액트의 장점만 알아본 것 같습니다. 어떤 기술이든지 장점과 단점이 공존할 수밖에 없는데요, 지금부터는 리액트의 단점에 대해서 알아보도록 하겠습니다.
가장 첫 번째 단점으로는 방대한 학습량을 꼽을 수 있습니다. 모든 라이브러리가 그렇겠지만 특히 리액트 같은 경우에는 기존과는 다른 방식의 UI 라이브러리이기 때문에, 배워야 할 것들이 많습니다. 그 방대한 내용들 중에서 필수적이고 중요한 부분들만을 추려서 앞으로 우리가 이 문서에서 배우게 될 것입니다.
그리고 한 번 배웠다고 끝이 아니라 계속 바뀌는 기술들에 대해서 꾸준히 공부해야 합니다. 리액트 같은 경우에도 계속해서 버전 업데이트가 이뤄지고 새로운 내용들이 등장합니다. 그렇게 때문에 지속적인 학습을 통해 새로운 버전에 대한 내용을 숙지하고 있어야 현업에서 일을 꾸준히 할 수 있습니다.
리액트의 또 하나의 단점으로는 높은 상태관리 복잡도를 들 수 있습니다. 뒤에서 배우겠지만 리액트에는 state라는 굉장히 중요한 개념이 나옵니다. state는 쉽게 말해서 리액트 컴포넌트의 상태를 의미합니다. 앞에서 Virtual DOM을 설명 할 때 바뀐 부분만을 찾아서 업데이트 한다고 설명 드렸었죠? 여기서 바뀐 부분이라는 것은 state가 바뀐 컴포넌트를 의미합니다. 때문에 state는 리액트에서 굉장히 중요한 역할을 담당하고 있다고 할 수 있습니다. 성능 최적화를 위해서는 이 state를 잘 관리하는 것이 중요한데, 처음에는 그것이 생각만큼 쉽지 않을 수 있습니다. 또한 익숙해지더라도 웹 사이트의 규모가 커져서 컴포넌트의 개수가 많아지면, 상태관리의 복잡도도 증가하게 됩니다.
그래서 보통 큰 규모의 프로젝트의 경우, 상태관리를 위해서 Redux, Zustand 등의 외부 상태관리 라이브러리들을 사용하는 경우가 많습니다. 이런 라이브러리들을 사용하려면 또 학습을 해야겠죠? 그래서 이것 또한 리액트의 단점아닌 단점이라고 할 수 있습니다. 이 문서는 입문자들을 대상으로 최대한 쉽게 리액트에 입문할 수 있도록 작성한 것이기 때문에, 복잡하고 어려운 외부 상태관리 라이브러리에 대해서는 다루지 않습니다. 하지만 이 문서에서 다루는 리액트 상태관리의 기본 개념에 대한 내용만 제대로 잘 이해한다면, 이러한 단점은 자연스럽게 사라질테니 너무 걱정하지 않아도 됩니다.
마지막 업데이트: 2025년 08월 21일 08시 15분
이 문서의 저작권은 이인제(소플)에 있습니다. 무단 전재와 무단 복제를 금합니다.
On this page