Native App Vs Html5 Web App
Here's what Mark Zuckerberg had to say about HTML5 back in 2012.
But things have changed since then. The entire world is building single page apps.
Google Adopted Angular js and everyone start to use angular for their projects.
In 2016, React was the most searched front-end framework.
PWA is changing things. Here is a video from google chrome developers
What are progressive Web App (PWA)?
Progressive web apps are designed to run on mobile browsers keeping in mind responsive native-like user experience. They can run when the device is offline, do not require installation and can be added to the browser home-screen for quick access. PWA can also execute native functionalities like push notifications. Thus they combine the best of both, native and web app worlds.
Progressive web apps have the following main characteristics:
Caching: The UI components of a PWA i.e. the HTML, CSS and JS components are separated out from the core functionality components. This allows the PWA to cache the UI components the first time it loads over the network. The cached components do not need to load each time during consecutive usage thus ensuring performance and highly satisfying user experience.
Responsiveness: Since the app runs in the browser, it can render responsively on all devices with all sizes without breaking the UI.
Security: The content of a PWA is served over https in order to prevent snooping and ensuring tamper-proof data delivery.
Sharing: Sharing is as easy as copying and pasting the URL. There is no hassle of installation.
- Service workers: PWA uses "service workers" which are background processes running on the device's browser. Service workers are employed by the PWA to perform functions like push notifications, automatic app updates, offline data presentation, etc.