What are the differences between Web App, Native App and Hybrid App?

7

Whenever I do research on mobile development, I come across three terms that appear a lot in searches.

These terms are:

  • Web App
  • Native App
  • Hybrid App

And this has generated some doubts that I would like to have clarified, the doubts are just below.

Questions

  • What is a Web App?
  • What is Native App?
  • What is Hybrid App?
  • What are the differences between Web App, Native App and Hybrid App?
  • asked by anonymous 11.01.2017 / 16:43

    2 answers

    4

    Web App

    Web App is the application made to run in a normal browser . It may even be SPA , but it will still be like a website, using HTML, CSS, JS, etc. . , with all normal limitations of the web. Does not access privileged operating system resources .

    It usually runs well on various platforms , with a little care. There is controversy, but it is said to be the cheapest when you want to run on any device. Rotating on all browsers on all devices is not as simple as it may seem.

    You have all difficulties running on an interface that you do not have full control over. Usability not the best possible for most cases, it is typical of the web.

    It's interesting for someone who will be a very casual user . It does not need to install anything. But you need to know the URL (URL) where the application is and enter the browser . Do not expect a person to install an application to use one time or another. People install very few applications on their devices and will only do so if it is very useful or they are very much a fan of that.

    Native App

    Native App is the one that uses native device features directly and has access to everything in the best possible way. To a large extent we can say that it is like doing the desktop application that we are accustomed to. For example using Win32, or some library that accesses it more or less directly.

    Usually runs well on just one platform . But there are libraries that help run the same code base with little adaptation on more than one platform while maintaining the native feature. Xamarin , for example. Here's just the opinion but technologies like Xamarin make the hybrid almost unnecessary.

    Usually gives the best result in usability . It is also the fastest .

    It's a real app.

    Hybrid App

    Hybrid App is a web application usually running in a specific , it can even be a custom browser for this and allows > access native features that are not normally available in the normal browser . It is a normal application.

    Of course, nothing prevents a hybrid application from being run on a slightly different model, but that's just the way it is.

    People use to try to make a unique application run on multiple platforms without so many restrictions . It does not always work out as well as you expect. It depends on the result sought and budget available.

    It's a middle-of-the-road solution. The result is middle ground . Usability is good, but not great. Performance is not the best. Access device features, but not the best way, and not always everything is available, at least not immediately, consumes more feature than native, including battery. The work is not as big as making it native to every platform, but not as small as making one for everything.

    Conclusion

    There are two options for me. Web or native, depends on the intent, the audience.

    If you are native, you have to choose whether to reach more than one platform. Remember that Android reaches the majority of the market, depending on the audience being reached, 70, 80, or even more than 90% of the market, and the share is growing. Outside it practically only iOS is actually used and has absolute growth not negligible.

    Many applications will be used for a very specific audience, probably for employees of a company who use or can use a standardized device. You do not always need more than one platform.

    Will it do for more than one platform? Then the choice is whether to make an application for each of them, and it has its advantage there, or use the same base for all of them (probably two or three at most).

    In a rough way let's say that if the professionals involved dominate the technologies, doing the native application gives a 100% result, making it native with a compatibilization library gives 95, who knows 98%, but can be only 90% depends on the quality of it, make hybrid, gives 70, 80%, and web about 50%, of course depends on each case. Do not consider these numbers as a study, it's just my perception.

    If done right, coding does not weigh as much on cost. Doing for three platforms will not cost three times more. Harnessing code for all three will not reduce the cost to one-third.

        
    11.01.2017 / 17:17
    3

    1. What is Web APP?

    Web App, is an application developed using web technologies (HTML5, CSS, JavaScript). However, it is intended to mimic or be very similar to a Mobile application using responsive design techniques, for example. The term may also refer to a web application (without intending to look like a Mobile application).

    Pros:

    • Who has a browser can access.
    • Does not need to be placed in a Store (App Store, Play Store)
    • Uses highly-developed technologies (HTML, CSS and JavaScript). This makes it easier to find professionals.

    Cons:

    • Do not access certain functions of the Operating System. This can hinder user interaction.
    • Access to the application depends on a browser (certain users do not like it).

    2. What is Native App?

    These applications are those developed using the languages and code libraries provided by the operating system manufacturer. For example, for Android you use Java, Gradle, Android Studio, and the / android libraries / import (android).

    Pros:

    • Access Operating System calls
    • Usually performs better than other solutions.
    • Uses native interface components which helps in user experience.

    Cons:

    • Cost is too high to maintain two teams, for example, for Android and iOS.
    • Finding professionals with the skills of both or a platform can be difficult.
    • Maintenance is laborious.

    3. What is Hybrid App?

    The hybrid application is developed using Web technologies as well as Web App, but they are not for browsers. These applications are designed to be used within a WebView - an interface component that exists in all mobile environments that interpret JavaScript, Html and CSS-, so this type of application can make calls to the Operating System and use features of the Hardware, such as Camera, access to files for writing and reading.

    Pros:

    • Can be distributed by Stores
    • All you need is a team to maintain and deploy features.

    Cons:

    • Performance can be a problem depending on the application.
    • Do not access some Operating System calls or work poorly with them.
    • Difficulty in maintenance, because it makes use of several libraries to achieve a behavior similar to Native.

      4. What are the differences between Web App, Native App and Hybrid App?

    I think I listed some of the above, but in case you want to go deeper, there are some links below:

    StackOverflow in English

    This link cites some pros and cons

    Cool pictures

        
    11.01.2017 / 17:17