In recent years, the fast-paced development of web technologies has dramatically powered development activities past its traditional boundary. Web technology has not only been entrenched in modern browsers, it has also contributed to enterprise-level Web applications, mobile application development, and server-side services, as well as some emerging platforms like the Internet of Things.
Here are several highlights of how advances in web technologies have changed the development process:
- HTML5 brings many new features (like built-in video/audio playback, local cache, etc.) to benefit modern browsing (cross-browser compatibility, mobile optimization, etc).
- Working with HTML5, CSS3 ensures easier and but still powerful building of web pages.
Web technologies also play a very important role as they enter the mobile application development arena. They benefit mobile developers through its simplicity and fast-paced development, as well as its “cross-platform” nature – “Write Once, Run Anywhere”.
In general, the benefits of Hybrid Applications fit well with our needs in terms of development process as well as our marketing strategy:
- Its “cross-platform” nature can help reduce development time and cost dramatically.
- We can easily design for various situations, like different platforms, device sizes, etc.
- We can provide rapid prototyping and easy distribution to each platform (web browsing or app store).
However, this approach still has several “pain points” that prevent developers from choosing hybrid applications over native applications, such as:
- Poor performance. Although the internal browser (WKWebView in iOS and Chrome WebView in Android) has been improved to provide faster web page reddening speed, the overall performance is still not comparable to what a native application brings.
- Poor Native API support. With the help of frameworks, the application can access to the native features of underlying platforms by leveraging external “plugins”. However, using such “plugins” actually brings uncertainty as well as complexity in managing the development as well as a required level of maintenance.
Then, is it possible to bring web technologies to “native” mobile application development?
The answer is YES.
Because of this, developers can utilize the fast and convenient web technologies for development as well as the counterpart performance and user experience that a native application provides.
Currently React Native is used in two of Facebook’s apps: Facebook Groups and Facebook Ads Manager. Without mentioning it, it is hard to tell they are not built upon native SDK and instead are built on React Native.
The “core” need for using web technologies in native mobile application development is to build applications with a powerful performance and native-feeling UI. And the most promising part of React Native just lies on it – perhaps it can help lead us to this new stage of mobile application development.
Leo Shi is the Mobile Tech Lead at Logic Solutions. He participates in the entire development process of iOS and Android mobile applications, and web-based mobile apps.