React Native의 근간이 되는 React.js는 기본적으로 프론트엔드단의 UI개발을 쉽게하기 위한 자바스크립트 라이브러리이다.
React Native는 React components를 안드로이드/IOS를 위한 Native Widget으로 컴파일하는데 도움을 준다.
즉, Javascript를 기반으로하는 React.js와 React Native로 안드로이드/IOS 앱 개발이 가능해지는 것이다.
웹의 <div> 역할을 하는
안드로이드의 Native Component, antroid.view와
IOS의 Native Component, UIView를
React Native의 컴포넌트, <View>를 이용해 대체할 수 있다.
마찬가지로 안드로이드와 IOS의 컴포넌트를 대체하는 다양한 React Native의 컴포넌트가 존재하고, 이들은 안드로이드와 IOS의 Native Views로 컴파일된다.
하지만, 내부 로직을 작성하는 JavaScript 코드는 안드로이드의 Kotlin이나, IOS의 Swift같은 언어로 컴파일되는 것이 아니라 JavaScript 가상머신에 의해 JavaScript 코드를 해석하여 안드로이드 / IOS 위에 작동한다.
레퍼런스