본문 바로가기
웹개발

리액트 학습에 대한 회의가 밀려온다

by 리또리또 2022. 8. 31.
반응형

리액트는 굉장히 자유롭다는게 장점이다. 그리고 가장 큰 단점이기도 하다. 

 

리액트라는 라이브러리 자체는 사실 몇 가지 주요 개념만 이해하면 어느정도 간단한 것들을 만들 수 있다.

익숙해지면 꽤 쉽다, 편하다는 느낌도 받을 수 있다.

 

그런데 이게 컴포넌트가 좀 많아지고, 페이지를 넘나들면서 상태를 공유해야 한다거나, 스타일을 입히더라도 CSS-in-JS를 사용할 것이냐, 순수하게 CSS만 사용할 것이냐 혹은 tailwindcss와 같은 것을 사용할 것이냐 등등 선택지들이 발생할때 굉장히 힘들어진다. nextjs로 건너가서 SSR관련하여 다른 라이브러리와 충돌을 겪는 상황에서는 해법도 찾기 어렵거니와, 아예 라이브러리를 뜯어서 해결하라는 식으로 내주는 답은 따라갈 엄두가 안난다.

 

완벽한 것은 없고 뭐든지 장단점이 있는데, 자칫 잘못하면 소스가 지저분해지기 쉽상이라 결국엔 내가 짠 소스를 내가 들여다보면서도 도대체 이해하기 힘든 상황으로 치닫는 경험들이 쌓이는 요즘이다. 심한 경우엔 그냥 거들떠 보기도 싫을 정도의 지저분한 소스가 되어있다. 

 

HoC라던지, hook이라던지 그런걸 아직 능숙하게 쓸정도로 개념이 제대로 박혀있지 않은 탓도 있지만, 다른 사람들의 소스를 참고하려고해도 정말 너무 스타일이 다양해서 모범사례로 삼고 따라가야할 코딩 스타일이 누군가 고민이 될 지경이다. 초심자 입장에서는 멘토가 필요한데, 그런 존재가 없이 그냥 넝마주이처럼 여기저기서 소스코드를 줏어다 들여다보며 내 상황에 맞게 고쳐쓰다보니 멘토가 너무 많아진 상황이다.

 

여기다가 아직 학습하지 못한 TS까지 곁들여지면 정말 혼란 그 자체다.

 

최근에 가장 고통받는 부분은 상태관리다.

리덕스는 너무 어렵고, 비동기처리는 엄두도 못내고 있다.

리덕스 세팅을 간신히 해두고 나서 간단한 CRUD는 해낸다 쳐도 컴포넌트 안에서 다양한 상태를 처리해야하다보니 아주 혼란스럽기 그지 없다.

recoil은 좀 쉽다길래 사용해봤는데, 도대체 상태를 어디서 추적해서 봐야할지 모르겠다.

react dev tool에서는 recoil의 상태 추적이 되질 않기 때문이다. 

 

이렇게 1인 개발로 혼자 맨땅에 헤딩하듯 공부하면서 만들어가는 입장에서는 오히려 강제된 상황을 주는 앵귤러나 Vue가 더 맞지 않았나 싶은 생각도 든다.

앵귤러는 진입장벽이 좀 높으니 Vue가 현실적인 대안이 되지 않을까 싶은 생각이 드는 현재상황이다.

리액트만 혼자서 1년 가까이 공부해왔는데, 아무래도 한계가 느껴진다.

 

현재로선 상태관리에 대한 벽을 넘기가 어려워보인다. 경험이 필요하다.

당분간은 환기시킬겸 Vue를 좀 만지작거려봐야할것 같다.

반응형

댓글