항해 플러스는 매주 발제 형식으로 코스가 진행되는 것 알고 계셨나요? 이번에 새롭게 선보이는 <Weekly 항플>는 항해 플러스 백엔드 & 프론트엔드 코스에서 실제로 제공되는 발제 내용 중 일부를 담고 있습니다. 최신 개발 트렌드, 빅테크 시니어의 생생한 의견이 담긴 내용을 다룰 예정이니, 성장하고 싶은 주니어 개발자분들은 주목해주시기 바랍니다.
시니어 멘토의 생각: React가 많은 사랑을 받는 이유
1) React의 장점
React 외에도 많은 프론트엔드 UI 라이브러리가 존재합니다. 하지만 아직 React를 넘어서는 인기를 보여주지는 못하고 있습니다. 왜 이렇게 React는 많은 사람들의 사랑을 받을까요?
첫째는, 마법 같은 편리함을 주지만 그 이면에는 React 연구 엔지니어들의 피땀 섞인 고민과 정립된 철학이 확장성 있는 형태로 보이기 쉽다는 점인 것 같습니다. 다른 프레임워크들 또한 자세히 알면 확장성을 갖출 수 있으나, Javascript 코드로만 보이는 React와 달리 여러 언어를 이해해야 하는 느낌을 줍니다. 물론 실제 학습 내용은 비슷하지만요.
둘째는, 첫째와 이어지는 부분인데 개발자가 시도해 볼 수 있는 여지가 많다고 느끼면서, 여러 개발자가 플러그인과 관련 라이브러리를 만들어내고 커뮤니티가 활성화된다는 점이 강력하지 않았을까 합니다. 거기에 Meta라는 든든한 회사가 뒤에 서서 React 자체에 대한 연구개발도 꾸준히 진행했다는 점도 한몫했을 것으로 생각합니다.
여기에 대한 여러분의 의견은 어떠신가요? 주변 동료와 함께 이야기를 나눠보는 것도 좋은 경험이 될 수 있을 것 같습니다.
2) React는 장점만 있을까?
React가 많은 사랑을 받는 건 사실이지만, 반대로 React를 반대하는 사람들도 있습니다. React는 많은 편리함과 이점을 가져다주는 만큼 많은 로직을 기본적으로 갖고 있습니다. JS는 웹 클라이언트에서 많이 사용되는데, JS의 절대량 자체를 꽤 차지하는 React는 로드 속도를 일부 잡아먹을 수밖에 없다는 점입니다. 또한 React의 장점으로 꼽는 Virtual DOM이 반대로 단점이 되기도 합니다. 비용이 큰 DOM 연산을 줄여 성능을 개선하지만, Virtual DOM을 관리하기 위해 그만큼 많은 메모리와 CPU 오버헤드가 발생하기 때문입니다.
위의 단점들을 일찍이 인지한 개발자들이 이를 개선하기 위해 많은 오픈 소스를 만들어내고 있습니다. 분명 이런 단점들은 타당하며 이런 단점들로 인해 React가 언젠가 사라질 수도 있겠지만, 반대로 React가 이를 개선하면서 하드웨어 성능이 올라가며 자연스레 단점이 단점이 아니게 될 수도 있을 것 같습니다.
참고로, React 팀은 최근 공식 문서에서 'Virtual DOM'이라는 용어를 제거했으며, 내부적으로 다양한 성능 개선 방안을 모색하고 있습니다.현재 React의 흐름을 살펴보고 싶으시다면, 아래 첨부한 아티클을 참고해보시기 바랍니다.
먼저 React 자체를 잘 이해하는 것이 중요합니다. 작성한 React 코드를 통해 화면에 그려지기까지 어떤 일들이 발생하는지, React의 API는 어떤 것들이 있는지, React 연구팀이 Anti-Pattern으로 지정한 것들은 어떤 것들이 있는지 하나씩 살펴보는 것이 좋습니다.
그 이후에는 React 만으로 개발하는 것에 한계를 느낀 훌륭한 개발자분들께서 상태 관리, 스타일, Data Fetching 등의 영역에서 고민하고 만들어낸 결과물들을 학습하고 사용해 보시면 좋습니다. 여기에 대한 자료는 웹상에 워낙 많기 때문에 공부하는 데 어려움을 겪지 않으실 것입니다.
💡
뉴스레터 <Weekly 항플>에서는 블로그 아티클보다 더 심층적인 내용을 다루고 있습니다. 항해 플러스 합류를 고려하고 있거나, 더 깊이 있는 학습을 원하는 주니어 개발자라면, 뉴스레터 <Weekly 항플>을 구독하여 더 많은 내용을 받아보시기 바랍니다.
🚢 개발자 이직 준비, 어떻게 시작해야 할지 모르겠나요?
한 단계 더 도약하는 험난한 항해에서 든든한 메이트가 되어드리겠습니다.
항해 플러스는 성장의 한계를 느끼고 있는 주니어 개발자를 위해 만들어진 실무 역량 강화 코스입니다.
기본기 역량 강화부터, 커리어 점프시켜 줄 TDD/성능최적화 프로젝트와 이직 코칭까지 한번에 할 수 있습니다. 성장을 향한 강한 의지만 있다면 항해 플러스 10주 성장 코스로 이직을 도전해보세요. React를 더 깊이 알고 싶은 프론트엔드 주니어라면, 리액트의 동작 원리를 파헤쳐 볼 수 있는 항해 플러스 10주 성장 코스로 이직을 도전해보세요.