티스토리 뷰
교재 <리액트 인 액션>
리액트 네이티브의 강점
개발자 가용성
- 새로운 언어를 배울 필요 없는 개발 플랫폼
=> why? 자바스크립트로 전부 이루어져있기 때문에
개발자 생산성
- 기존엔 안드로이드/iOS 팀 모두가 있어야 앱 개발 가능했었음
=> react-native의 등장으로 개발자는 안드로이드/iOS 개발자로 제한 필요 X - Redux의 사용으로 앱 전용 플랫폼 뿐 아니라 웹에서도 데이터 아키텍처 공유 가능
성능
- 다른 크로스 플랫폼들은 네이티브 앱의 성능을 못 따라가지만 리액트 네이티브는 이에 크게 뒤지지 않음
단방향 데이터 흐름
- 단방향 데이터 흐름을 통해 앱의 이해가 쉬움
- 지난 소개 글에서 설명함.
개발자 경험 (빠른 컴파일)
- 웹은 새로고침(F5)을 통해 빠른 컴파일이 가능, but 네이티브 앱에서는 컴파일 시간이 매우 긺
=> 리액트 네이티브는 크롬과 사파리 디버깅 도구를 이용하여 빠른 컴파일이 가능 - hot reloading 이라는 빌트인 기능을 통해 변경된 컴포넌트만 빠르게 리로딩, UI의 변화를 빠르게 확인 가능
트랜스파일링
- 트랜스파일링(transpilation) : 트랜스파일러(transpiler)가 특정 프로그램 언어로 작성된 소스코드를 받아서 다른 프로그램 언어로 코드를 변환해 주는 것
=> 구버전에서도 언어의 최신 기능을 사용하고자 할 때 사용 - 리액트 네이티브는 내장된 바벨(Babel)을 사용
** 바벨: 트랜스파일링 오픈 소스 도구로, 최신 자바스크립트 언어의 기능을 사용하게 해줌
생산성과 효율성
- 앞서 언급한 강점들(개발자의 가용성/생산성)에 따른 생산성과 효율성의 증대
커뮤니티
- 커뮤니티가 크고 활발
=> 이로 인해 얻을 수 있는 지원이 많아 개발시에 유용하다
오픈 소스
- 오픈소스의 장점: 실제 사용자가 개발에 관여해 사용자가 바라는 것에 근접하게 소프트웨어를 개선 가능
=> 다른 비공개 소프트웨어에서는 버그 수정 및 개선 팀이 별도로 존재. 비용 ↑↑
빈번한 업데이트
- 리액트 네이티브나 하이브리드 앱 프레임워크를 사용시
=> 앱 스토어 승인(대략 2주)을 거치지 않고도 사용자 기기에 직접 업데이트된 모바일 앱 배포 가능
'Front-end > React-Native' 카테고리의 다른 글
[React-Native] state 초기화와 갱신 (0) | 2022.02.28 |
---|---|
[React-Native] 컴포넌트(Component) (0) | 2022.02.28 |
[React-Native] 리액트 네이티브 소개 및 작동방식 이해하기 (0) | 2022.02.18 |
[React-Native] Image 컴포넌트 (0) | 2022.02.01 |
[React-Native] TouchableOpacity, style, deaultProps (0) | 2022.01.31 |
Comments