Notice
Recent Posts
Recent Comments
Link
«   2024/03   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31
Archives
Today
Total
관리 메뉴

차근차근

[React-Native] (1) React Native란 무엇인가? 본문

대학교/FE

[React-Native] (1) React Native란 무엇인가?

SWKo 2020. 3. 3. 23:57

Learning React Native, 2nd Edition, by Bonnie Eisenman 정리

0. React Native란 무엇인가?

  • 리액트 네이티브는 iOS와 안드로이드에서 동작하는 네이티브 모바일 앱을 만드는 자바스크립트 프레임워크이다.
  • 리액트 네이티브는 사용자 인터페이스를 만드는 페이스북의 자바스크립트 라이브러리인 리액트에 기반을 두고 있다.
  • 브라우저가 아닌 모바일이 타깃.

1. 리액트 네이티브의 이점

  • 대상 플랫폼의 표준 렌더링 API를 사용한다.
  • 작성한 마크업을 플랫폼에 따라 그에 상응하는 진짜 네이티브 엘리먼트로 전환한다.
  • 게다가 리액트는 메인 UI스레드와 분리되어 실행되기에 앱의 역량을 줄이지 않아도 앱은 빠른 성능을 유지할 수 있다.
  • props나 state가 변경될 때 리액트 네이티브는 뷰를 다시 렌더링한다.
  • 리액트 네이티브와 리액트의 가장 큰 차이점은 HTML과 CSS 마크업이 아니라 대상 플랫폼의 UI라이브러리를 이용해 렌더링한다는 점이다.
  • 리액트 네이티브를 이용하여 앱을 만들 때는 자바스크립트로만 작성하기 때문에 변경사항이 반영되었는지 확인하기 위해 앱을 다시 빌드할 필요가 없다.
  • 애플과 구글은 자바스크립트 기반의 변경사항에 한해 표준 심사 절차 없이 원격으로 로딩하는 것을 허용하고 있다. 즉, 며칠 혹은 몇 주 걸리는 iOS리뷰를 거치지 않아도 된다는 점에서 매우 편리하다.
  • 코드 재사용 및 지식 공유

2. 위험과 단점

  • 리액트 네이티브에는 추가적인 레이어가 있기 때문에 디버깅이 간단하지는 않다.
  • 대상 플랫폼의 새로운 버전이 공개되었을 때(예를 들어 업데이트된 안드로이드 버전에서 새로운 API를 제공할 때) 리액트 네이티브가 이를 모두 지원하기까지는 시간이 좀 걸린다.
  • 다행히 대부분의 경우 사용자가 직접 지원하지 않는 API를 리액트 네이티브에서 사용하도록 구현할 수 있다.

'대학교 > FE' 카테고리의 다른 글

[Redux] Redux 동작원리  (0) 2020.03.04
[React-Native] (2) 리액트 네이티브 다루기  (0) 2020.03.04
[React-Native] Redux  (0) 2020.03.02
[React Native] Weather App(2)  (0) 2020.02.28
[React Native] Weather App(1)  (0) 2020.02.28
Comments