Số 3, Đường O, Phú Mỹ Hưng, Quận 7, VN
Native vs Hybrid
Mobile development used to be complicated and much more expensive than web development. iPhones, Android and Windows phones all use different technologies, to reach every user mobile apps had to be developped several times, once in the specific programming language of every platform, iOS (Objective C and now Swift), Android (Java), Windows Phone (C++, C#).
Early on, people tried to solve this problem by allowing developers to code mobile applications from web technologies, which resulted in encapsulating a website in HTML5 inside a mobile app. These solutions are known as “hybrid mobile apps”, they appeared a few years ago (Apache Cordova, also known as Phonegap, was created in 2009) but the apps that can be created are easily recognizable as they don’t match the smartphone’s own design (especially on iPhones) and have performance issues.
In our search for the best web tech to develop cross-platform applications, we quickly got interested in React Native when it was created in 2015 by a team from Facebook. React Native enables us to develop cross-platform mobile applications that render natively on smartphones and tablets. There is a single code to develop and maintain for an application deployed simultaneously on iOS, Android and soon on Windows phones.
React Native is a framework designed by Facebook to accelerate the development of their mobile applications. Applications developed with Native React have the “look and feel” of native applications while retaining the advantages of web development. The applications can be deployed on Android and iOS faster without sacrificing performance and ergonomics.
In practice this means that developers work on a single code base. The development of the application is faster.
Who is using React Native? Apart obviously from Facebook apps (Facebook Ads Manager, Facebook Groups), the latest versions of the Instagram, Airbnb and Gyroscope mobile apps have been built with React Native.