React Native 장단점과 동작방식

hidden_·2022년 11월 10일
1

React Native 학습

목록 보기
1/1

React Native 란 ?

2015년 페이스북에 의해 공개된 오픈소스 프로젝트로, 사용자 인터페이스를 만드는 리액트에 기반을 두고 제작되었다.
하지만 리액트와 달리 웹브라우저가 아닌 . iOS와 안드로이드에서 동작하는 네이티브 모바일 애플리케이션을 만드는 자바스크립트 프레임워크이다.

네이티브 앱이란?
안드로이드 또는 iOS 같은 구체적인 플랫폼만을 위해 만들어진 응용 프로그램

1. 장점

  • 플랫폼 간 공유가 가능해서 두 플랫폼을 동시에 개발할 수 있다.
  • 작성된 구성 요소들이 재사용 가능하다.
    변경된 코드를 저장하기만 해도 자동으로 변경 내용이 새로고침 되어 즉각적으로 확인이 가능하다

2. 단점

  • 네이티브의 새로운 기능을 사용하는데 오래 걸린다.
  • 안드로이드나 ios 에서 새로운 API를 제공하더라도 리액트 네이티브가 이를 지원하기까지 시간이 소요된다.
  • 잦은 업데이트로 인해 버그를 수정하는 것은 좋지만, 개발에 방해가 되기도 한다.

3. 동작방식

리액트 네이티브는 어떻게 자바스크립트 코드를 이용해 네이티브 코드로 변경될 수 있을까?

브릿지

자바스크립트 코드를 이용해 네이티브 계층과 통신할 수 있도록 연결해주는 역할

출처 : https://brocoders.com/blog/react-native-interview-questions/

브릿지는 자바스크립트 스레드에서 정보를 받아 네이티브로 전달한다. 자바스크립트 스레드는 자바스크립트 코드가 실행되는 장소이며 보통 리액트로 구성되어 있습니다.

네이티브 영역에는 UI를 담당하는 메인 스레드가 있고, 레이아웃을 계산하는 데 사용하는 백그라운드 스레드 섀도스레드가 있습니다.

각 모듈에는 자체 스레드가 있는데, 안드로이드의 경우 스레드 폴을 공유합니다.

리액트 네이티브에서는 기기와 통신하는 모든 자바스크립트의 기능을 분리되 스레드로 처리하면서 성능향상에 도움이 됩니다.

profile
steady

0개의 댓글