[리액트] React 왜 쓰는가?

soonil90·2023년 2월 2일

이야기에 앞서..

프론트엔드 개발자 채용공고의 자격조건, 우대조건에 'React 사용 경험'이라는 문구가 자주 보인다. 국비지원 교육과정에서 Python, Django, JavaScript를 배운 나로서는 React를 프로젝트에 사용해본 적이 없다. 교육과정에서 배운 언어, 프레임워크만으로도 충분히 프로젝트를 만들 수 있었기 때문에 React를 배울 생각을 하지 못했다. 그런데 교육을 마치고 채용시장에 들어와보니, 프론트엔드 개발자에겐 React는 필수로 배워야하는 라이브러리였다. 배우긴 해야하는데 채용시장에서 요구한다는 단순한 이유만으로 배우기는 싫었다. 왜 회사에서는 React를 사용하는지, FE개발자는 왜 React를 사용하는지 알아야 하기 위해 이 포스팅을 작성한다.

React란?

사용자 인터페이스를 만들기 위한 JavaScript 라이브러리

React 공식문서에서 처음 보이는 문구이다. 사용자에게 더 나은 인터페이스를 제공하기 위해 만들어진 JavaScript 라이브러리라고 생각하면 되겠다. React는 SPA(Signle Page Application)로 기능하기에 사용자에게 렌더링에 대한 지연을 방지하고 최적화된 페이지 이동을 제공한다. 이런 이유로 많은 개발자들은 React를 사용하는 것이 아닐까 생각한다. 그리고 아래와 같은 기능들이 있다.

  • Virtual Dom 지원
  • JSX(JavaScritp + XML)
  • React Native (앱 개발 가능)

Vue, Angular도 있는데?

React외에도 JavaScript 기반의 프레임워크가 있다. Vue.js와 Angular이다.

Vue.js는 React의 장점인 Virtual Dom과 Angular의 양방향 바인딩을 가져온 프레임워크이다. 자바스크립트의 기본 스타일을 적용하고 있어 학습하기가 쉽다.

Angular는 라우팅, 상태관리, 폼 유효성 등 필요한 도구를 모아놓은 All In One 프레임워크이다. 그렇기 때문에 React와 Vue.js와 비교했을 때 가장 배울 것이 많고 어려운 편이다. 가볍고 빠르게 작업을 해야하는 프로젝트 보다는 큰 프로젝트에 사용하기 적합하다.

그럼 React를 쓰는 이유는?

React를 쓰는 이유는 다른 프레임워크에 비해 기회비용이 뛰어나기 때문이다. 웹개발도 가능하지만, React Native를 이용하여 앱개발까지도 가능하다.

Angular는 All In One 프레임워크인 만큼, 배울것이 많고 초기 구동 속도가 느리다.

Vue는 성능이 매우 빠르다는 장점이 있지만, React에 비해 사용자가 적으며 커뮤니티가 소규모 이다보니 정보를 얻는데 상대적으로 어려움이 있다.

그렇기에, 학습하는데 무리가 없으며 타 프레임워크에 비해 대규모 커뮤니티를 형성하고 있어 대부분의 프론트엔드 개발자들과 입문자들은 React를 쓰는 것이다.

profile
문제를 해결하자

0개의 댓글