There are 3 types of apps:
1. Native apps
- iOS on Objective-C or Swift
- Android on Java
- Windows Phone on Net
2. Hybrid apps for all platforms altogether with Xamarin, React Native, Ionic, Angular Mobile Sencha Touch etc.
3. Web apps as responsive versions of website to work on any mobile device.
Types of apps
Such apps are developed for a single mobile operating system exclusively, therefore they are “native” for a particular platform or device. App built for systems like iOS, Android, Windows phone, Symbian, Blackberry can not be used on a platform other than their own. In other words, you won’t be able to use Android app on iPhone.
Main advantage of native apps is high performance and ensuring good user experience as developers use native device UI. Moreover, an access to wide range of APIs that puts no limitation on app usage. Native applications are distinctly accessible from app stores of their kind and have the clear tendency to reach target customers.
Some cons to native apps are higher cost compared to other types of apps – due to the need of creating app duplicates for other platforms, separate support and maintenance for different types of apps resulting in bigger product price.
Hybrid multi-platform apps are fast and relatively easy to develop – a clear advantage. Single code base for all platforms ensures low-cost maintenance and smooth updates. Widely used APIs, like gyroscope, accelerometer, geolocation are available.
On the other hand, hybrid applications lack in performance, speed and overall optimization in comparison to native apps for instance. Also, there are certain design issues due to app inability to look in exactly same way on two or more platforms.
Web applications require minimum of device memory, as a rule. As all personal databases are saved on a server, users can get access from any device whenever there is internet connection. That is why the use of web apps with poor connection would result in bad user experience. The drawback is access to not that many APIs for developers, with exception of geolocation and few others.
Apps content is only a wrapper on the used device while most of data should be loaded from a server.Performance is inextricably linked due to browser work and network connection. Only up to 14% of time users spend on mobile websites. And just some of device APIs may be used (such as geolocation)
Source: Think Mobiles