라이브러리 도입시 고려해야 할점 : Vue.js와 React.js의 비교

HS K·2023년 2월 9일
0
post-custom-banner

라이브러리 도입시 고려해야 할점 : Vue.js와 React.js의 비교

Vue.jsReact.js
반응형함수형
- watch, computed가 있으며 값 대입만으로 값을 수정가능immutable, setState(함수를 통해서 값을 바꿀 수 있음.) mapStatetoProps, pureComponent
양방향 바인딩단방향 바인딩
htmlJSX

데이터바인딩

먼저 데이터바인딩은 화면에 보이는 데이터(view)와 브라우저 메모리상의 데이터가 일치하게 만드는 것인데 데이터바인딩에는 위의 그림처럼 2가지, 즉 양방향 바인딩(two-way binding)과 단방향 바인딩(one-way binding)이 있다.
Vue.js는 양방향 바인딩 모델을 사용하고 React.js는 단방향 바인딩 모델을 사용한다.
데이터가 변했을 때 뷰에 반영되는 것은 둘 다 동일하지만, 뷰에서 이벤트가 일어났을 때 양방향 바인딩은 바로 반영되는 반면에, 단방향 바인딩은 따로 처리해줘야 한다는 점에서 다르다.

자유도, 타 플러그인 의존도, DOC, 러닝커브 비교

Vue.jsReact.js
자유도낮음높음
의존도낮음높음
DOC쉬움보통
러닝커브낮음보통

성능

https://krausest.github.io/js-framework-benchmark/2022/table_chrome_105.0.5195.102.html

테이블의 row를 선택하는 것, 바꾸는 것만 react.js가 뒤쳐지며 대부분 Vue.js가 이깁니다. 그러나 거의 비슷하게 성능이 좋은 것을 알 수 있다.

커뮤니티

React.jsVue.js
커밋수152133510
스타수195k200k
포크수40.4k32.8k
기여자1579345

기여자수, 커밋수, 포크수는 React.js가 많으며 Vue.js는 스타수가 앞서는 것을 볼 수 있다. 둘 다 훌륭한 지표이지만 React.js가 앞선다.

모바일로의 확장성

서비스마다 다르지만 모바일앱으로도 확장할 수 있다고 생각이 되면 생각해야한다.

https://github.com/facebook/react-native
https://github.com/ionic-team/capacitor
https://github.com/NativeScript/NativeScript

위의 링크를 타고 가면 보이는 것처럼 React-native가 커뮤니티 적인 측면에서 압도적이다.

팀원들의 역량

팀원들의 숙련도도 중요하지만 특징, 자유도, 의존도, 성능, 커뮤니티, DOC, 러닝커브는 필수적으로 분석하고 기술을 도입해야한다.

profile
주의사항 : 최대한 정확하게 작성하려고 하지만, 틀릴내용이 있을 수도 있으니 유의!
post-custom-banner

0개의 댓글