React Native components are pure, side-effect-free functions that return what the views look like at any point in time. For this reason it is easier to write state-dependent views, as you don’t have to care about updating the view when the state changes since the framework does this for you.
React Native commenced as Facebook’s hackathon project developed in response to the company’s needs. Facebook wanted to bring all the advantages of web development – such as quick iterations and having a single team develop the whole product – to mobile. That is how React Native was brought to life and leveraged in mobile app development for both iOS and Android apps.
Originally, Facebook only developed React Native to support iOS. However, with it’s recent support of the Android operating system, the library can now provide mobile UIs for both platforms. Facebook used React Native to develop its own Ads Manager app, creating both an iOS and an Android version. Both versions were created by the same team of developers. Facebook also made React Native open-source, with the idea that compatibility with other platforms like Windows or tvOS could be operated on by the development community, so stay tuned.