React, 왜 사용하시나요?
일단 여러가지 이유가 있겠지만 취업준비생 입장에서 보자면 취업 시장에서 가장 많이 뽑는다는 것, 전세계에서 가장 많이 사용하는 라이브러리라서 커뮤니티가 거대하고 stackoverflow 등에서 정보를 찾는 게 상대적으로 쉽다는 장점이 있었습니다.
개발자 입장에서 보자면 첫번째로 컴포넌트 기반의 화면 구성으로 반복되는 코드의 재사용성을 높여주고 효율적인 화면 구성을 할 수 있으며 이런 컴포넌트들은 유지보수가 용이합니다. 두번째로 가상돔을 이용해서 dom조작을 직접 조작하는 것 보다 안정적이고 더 빠른 웹을 구현할 수 있습니다. 세번째로 리액트 네이티브를 활용하면 앱 개발이 가능합니다. 네섯번째로 요즘 대세인 typescript 지원이 react가 더 잘되어있습니다. 다섯번째로 테스팅 도구와 결합할 수 있어서 테스트하기 더 쉽습니다. 여섯번째로 서버 사이드 렌더링과 클라이언트 사이드 렌더링 모두 지원합니다.
- vue와 비교하는 부분이 있어도 좋음
Vue.js | React.js |
---|---|
반응형(watch, computed) - 값 대입만으로 변경 | 함수형(immutable) - setState, pure, mapstatetoprops |
양방향 바인딩(값이 변경되면 watcher가 model과 view 변경) | 단방향 바인딩(이벤트를 함수가 처리) |
HTML | JSX |
자유도 낮음 | 자유도 높음 |
타 플러그인 의존도 낮음 | 타 플러그인 의존도 높음(파일 수 증가) |
Doc 쉬움 | Doc 보통 |
러닝커브 낮음 | 러닝커브 보통 |
기준 | 설명 |
---|---|
성능 | vue가 속도면에서 조금 높지만 react와 큰 차이 없음 |
커뮤니티 | commit과 contributors의 숫자, stackoverflow에 등록된 질문 답변 수가 react가 더 많음 |
언어 | vue는 중국어 자료가 많지만 react는 기본적으로 영어 자료가 대부분 |
플러그인 | vue는 플러그인이 적고 개발이 멈춘게 많은 반면 react는 플러그인이 많음 |
모바일 | vue도 native script+capacitor를 이용해서 만들 수 있지만 react native가 코드 호환성 등 더 편리함 |
채용 | 리액트를 더 많이 뽑음 |