[우이삭] Next JS 를 선택하지 않은 이유

수연·2023년 12월 5일

Wooisac

목록 보기
4/9
post-thumbnail

Next JS 를 선택하지 않은 이유

React vs Next.js

프로젝트를 시작하기 전부터 Next JS 에 대한 논의는 계속 이어져왔다. 요즘 대세라는 그것을 쓸 것이냐 말 것이냐…

처음엔 멘토님께도 여쭤보고 (현석 멘토님께서 무척이나 상세한 답변을 해주신 것에 대해 아직도 감사하다.) 다른 팀의 분위기도 살펴보았지만 결국 결정은 팀원끼리 정해야할 일이었기에 일주일간의 의견 교환 끝에 우리는 Next JS 를 사용하는 대신 React 를 사용하기로 타협했다.

Next JS 를 사용하는 데 부정적인 나의 입장

React 를 충분히 잘 하고 있는가? → 🙅🏻

데브코스를 수료하며 좋은 학습은 무엇인가를 진지하게 고민해 본 것 같다. 그 중 많이 바뀐 의견은 다양한 기술 스택을 가지고 있는 것보다 하나의 기술 스택이라도 제대로 하는 사람이 낫다. 라는 것이었다.

중간 프로젝트인 니르바나를 끝마치고 난 뒤, 나는 새로운 기술 부채가 쌓인 상태였다. Emotion, react-query, Recoil 등등 새로운 라이브러리를 도입한 것도 있지만 그간 React 를 제대로 사용하지 못한 것 같다는 생각 때문이었다. React 공식 문서를 읽고, 팀원들과 스터디를 할 때 React 와 관련된 질문을 하면서 지금 당장은 무언가 새로운 것을 더 배울 때가 아니라고 판단했다.

물론 Next JS 라는 새로운 프레임 워크를 알아가는 재미를 포기하는 것이 아쉬웠지만 최종 프로젝트를 성공적으로 마무리하고 싶었고, 어정쩡하게 Next JS 의 문법을 알게 되는 것보다 React 로 많은 것을 시도해보는 편이 얻을 것이 많다고 생각했다.

Next JS 의 필요성을 인지한 상태인가? → 🙅🏻

Next JS 를 사용하는 이유에 대해 공부한 적이 있다. 기존의 CSR 이나 SPA 가 가지고 있던 고질적인 문제들 (SEO, 초기 로딩 속도) 을 해결하기 위해 SSR 방식의 Next JS 를 사용한다는 것이었다.

그런데 이런 문제들을 React 를 사용하면서 사실 체감하지 못한 부분이었다. 많은 데이터를 초기에 로드하거나, SEO 를 신경 쓸 만큼 수익이나 유입이 중요한 프로젝트를 만들어 본 적이 없기 때문일지도 모른다.

욕심이라면 욕심일 수 있겠지만 SPA 의 불편함을 직접 체감한 뒤 그 필요성을 깨닫고 Next JS 를 적용하는 방향을 원했다. 그 전까진 React 만으로 개발하는 것을 목표로 하고 싶은 욕심이 있었다.

Next JS 를 사용하는 데 긍정적인 팀원의 입장

모두가 Next JS 를 사용하는 데 반대한 것은 아니다. 긍정적으로 보는 팀원도 있었다. 이렇게 의견 차이가 존재한다는 게 프로젝트의 의의라고 생각은 했지만, 자칫 프로젝트 시작도 전에 서로 기분이 상하는 일을 만들까봐 걱정이 되기도 했다.

Next JS 를 사용하는 데 긍정적인 팀원은 프로젝트에 Next JS 를 적용해봄으로써 얻을 이점들과 함께 프레임워크 지식이 하나 더 늘어나는 것을 기대하고 있었다. Next JS 가 어떤 이점을 가지고 있는지 상세하게 정리해서 설명해주었다. SSR 이 가지는 이점이나, Next JS 에서 서버 측 코드를 핸들링 할 수 있다는 점이나… 내가 봐도 안 쓸 이유는 없어보였다.

하지만 열심히 준비해온 팀원에게 미안하게도 내 마음은 React 를 사용했으면 좋겠다는 쪽으로 마음이 확고하게 굳어있었다.

정확히는 Next JS 를 사용해서 프로젝트를 진행하게 될 경우, 프로젝트를 위해 프레임워크를 사용한 것이 아니라 프레임워크를 위한 프로젝트가 될 것만 같다는 걱정이 계속해서 들었다.

결론은?

의견 결정을 하기로 한 날까지 Next JS 를 사용할지 말지에 대해선 비슷한 의견이 오갔다. 사용하면 이점 밖에 없는 프레임 워크이다, 하지만 기술 부채가 생길까봐 걱정이 된다…

우리는 고뇌에 빠져 있다가 Next JS 를 쓰는 것을 찬성하는 팀원이 이렇게 운을 뗐다.

그런데 우리가 Next JS 에 대한 확신보다는 걱정이 앞서는 상태인 거 같아. 이렇게 확고하지 않은 상태에선 Next JS 를 쓰지 않는 게 맞아보여.

이렇게 말해준 팀원에게 고맙기도 했고, 한 편으로는 내가 욕심을 부린 것 같아 미안하기도 했다. 내가 실력이 좀 더 있었다면 Next JS 를 쓸 수 있었을지도 모른다는 생각이었다.

아무튼 우리 팀은 걱정을 안고 새로운 프레임워크를 시작하는 것보다는 아예 걱정을 배제하고 기존의 실력을 탄탄하게 만드는 쪽을 택했다.

이땐 사뭇 아쉬운 느낌이 남았지만 프로젝트에서 큰 에러를 마주할 때마다 우리 그때 Next JS 선택 안 해서 다행이었지? 하며 웃어 넘기게 되었다. 팀원들과 기술 스택에 관한 논의를 이번 프로젝트를 통해 처음으로 해보았는데 이 과정에서 얻은 교훈은 다음과 같다.

  1. 팀원을 설득하기 위해 탄탄한 증거를 준비하자.
  2. 정답이 정해져 있다는 생각을 버리고 열린 마음을 가지자!

0개의 댓글