App, short for application, is a term that has been used in IT for quite some time, but only became popular with consumers in 2008, when it was used in relation to mobile devices (PCMag 2013 [online]). Different kinds of paradigms can be identified in the mobile app landscape: Native app vs web app vs hybrid app. Each has its specific purpose, advantages and limitations.
Native apps are specifically developed to run on certain mobile OSs (platforms), using an Integrated Development Environment (IDE) and Software Development Kit (SDK). Native apps need modifications to be able to run on other platforms, e.g., apps that are targeted for the iOS platform can only run on Apple devices such as iPhone, iPad, and iPod touch. For the 3 major platforms (iOS, Android, and Windows Phone), there are already 5 native platform languages: C/C++ can be used for iOS and Android, Objective C is used for iOS, C# is used for for Windows Phone, Java is used for Android, and Visual Basic.NET is used for for Windows Phone (Shackles 2012, p. 3). Native apps are installed physically on the device itself and are distributed through application stores that are also targeting specific platforms. Known stores are App Store (Apple), Google Play (Google), and App World (BlackBerry). Native apps are provided with complete access to device capabilities and benefit from hardware-accelerated performance, and are therefore often first choice for game developers (Pelletier 2013). Because of greater cooperation between native apps and their platform’s OS, local user data and application data storage like runtime, state or preferences are allowed, thereby enhancing speed since no online data transferring is needed. The source code of native apps is compiled unlike the source code of web apps, which is interpreted by the browser before being processed. Ergo, native apps always execute faster than web apps (Wagner 2013, p. 359). The major drawback of native apps is that they do not support cross- platform development and targeting all major platforms is a very elaborate process.
The devices and their specific Mobile OSs that manage the devices’ hardware and the apps that run on them are referred to as Mobile platforms. Since the introduction of the first PDA and its Newton OS by Apple in 1987, a lot has changed (Helas et al 2012). There is a generous amount of application platforms on the market today. Some are more dominant than others. The protagonists in the Mobile OS market are: Android (Google), iOS (Apple), Windows Phone and BlackBerry OS (RIM) (Supermonitoring 2013 [online]). Less used (insignificant) OSs are: Symbian (Nokia), Samsung Bada, webOS (Hewlett-Packard), Linux Maemo and MeeGo.