One of the most often asked questions when consulting for mobile development is what is the difference between web, hybrid, and native applications. Often times the business needs to know the specifics and how they affect the bottom line and user experience. This is the first part of a three part blog series that aims to answer these questions.
The easiest way to understand a web application is to not think of it as a web application. A web application is just a different way of saying a website. The only difference with a web application when referring to the mobile space is that the web application is designed and developed to work well on a small screen whether it be a phone or a tablet.
While there are a number of benefits to using a web application, there are also a number of downsides. One of the most notable downsides is the speed of the application. Since the user is essentially downloading all/most of the data each time they hit the web application, the connection speed becomes an issue. The speed of the data transfer is not the only speed issue, there is also speed issues with graphics and animations within the application. Since the device is using the browser to compile and render all graphics, it can be slow and not perform as well as other methods.
Another downside to this type of application is data storage. It is possible with HTML5 to store data using Web Storage but this is just a simple SQL database, which is not nearly as fast or secure as any of the devices native database utilities. This means that if you are trying to cache data within the browser, it will work fine, as long as you do not have a lot of data. There will be noticeable lag with long running data operations.
The other downside to a web application can be classified as mostly poor user experience. For instance, if the user is accessing a secure site, there is no way of account management. This means that the user will need to login each time their session has expired and they try to access the application. Another example of the poor user experience comes from simply having to open the browser and either go to your bookmarks or type in the address of the specific web application you are trying to access. This is much more onerous than having an installed application.
Another downside that isn’t always thought of, is an issue with the battery. Mobile devices depend on the battery to function. Use of a web application requires more data to be downloaded as well as more processor for rendering the graphics. Because of this, the battery will drain faster than with the native application alternatives.
To recap: 1) A web application is just a website. 2) Development for a web application is faster than other methods. 3) Web apps do not have access to device hardware and can present a number downsides including speed, storage, responsiveness, and user experiences.