DA8. Native vs. Web Mobile Applications¶
Statement¶
Compare and contrast native mobile apps and mobile web apps, from the developer’s as well as the user’s/client’s perspective
Solution¶
Native mobile apps are applications that runs directly within the operating system of a phone; while web applications are just websites that are designed to be viewed on a mobile device (responsive). The differences between web apps and native apps are getting less and less, with the advancements of modern web APIs, and the introduction of Progressive Web Apps (PWAs) and Hybrid Apps. The following list summarizes the differences between native and web apps:
- Native Mobile Apps (Stevens, 2021):
- Built for a platform (iOS, Android, etc.).
- Distributed through an app store, and must be downloaded and installed.
- They can access device features (camera, GPS, etc.).
- May run offline.
- Faster and more efficient but require constant updates and downloads.
- More expensive to develop, as they require different codebases for each platform and different skillsets, developers, distribution channels, etc.
- They usually have a better user experience, and have more features and functionality.
- Built through IDEs (Xcode, Android Studio, etc.) that target specific platforms and have specific languages and frameworks: Swift, Objective-C for iOS, Java, Kotlin for Android.
- Big IDEs companies have standardized the development process and have made it easier to develop native apps using their tools, frameworks, languages, and development kits.
- More secure, as they are distributed through app stores and are reviewed by the app store owners.
- Mobile Web Apps (Stevens, 2021):
- Accessed through a web browser and require an internet connection.
- No download or installation required.
- Run on any device and not just phones or specific platforms.
- Built using web technologies (HTML, CSS, JavaScript, etc.).
- No one standard SDK or IDE for the web.
- Quicker and easier to develop/maintain, and cheaper.
- Progressive web apps (Tabor & Vrdoljak, 2019):
- It lays somewhere in between native and web apps, as it is a web app that can be installed on a device and can access device features.
- Can be used offline.
- Have some native app features, such as push notifications, native video/audio capture, native video/audio playback, etc.
- They are responsive, connectivity-independent, app-like, fresh, safe, discoverable, re-engageable, installable, linkable web experiences.
- Hybrid Apps (Tabor & Vrdoljak, 2019):
- Hybrid apps are web apps that are wrapped in a native app.
- Hybrid apps are distributed through the app stores, and installed like native apps.
- They consist of a WebView or thin native app wrapper that loads the web app from the server (as if you are opening a web page in a browser).
- Cordova, Flutter, and React Native can be used to build hybrid apps.
The audience for the web is far larger than native apps, and it is easier to reach them; and the entry threshold is higher for native apps; usually businesses are advised to start their online presence with a website, and then move to native apps if they need to (as their user base grows, or if they need to access device features) (Summerfield, n.d.).
From user’s perspective, the ability to use some native apps without internet connection is a big advantage for native apps; however the install/update requirements and storage consumption by these apps is a big disadvantage. On the other hand, web apps that run in an isolated browser environment and require no installation, and it always available mark advantages to web apps.
From developer’s perspective, native apps are more expensive to develop and maintain, as their development requirements are higher, but the available SDKs do some of the heavy lifting for the developers. On the other hand, web apps are cheaper to develop and maintain, but it is easy to make wrong decisions based on the little standardization in the web development world.
References¶
- Stevens, E. (2021, September 7). What is the difference between a mobile app and a web app? CareerFoundry. https://careerfoundry.com/en/blog/web-development/what-is-the-difference-between-a-mobile-app-and-a-web-app/
- Summerfield, J. (n.d.). Mobile website vs. mobile app – Which is best for your organization? Human Service Solutions. https://www.hswsolutions.com/services/mobile-web-development/mobile-website-vs-apps/
- Tabor, M., & Vrdoljak, M. (Eds.). (2019). Mobile developer’s guide to the galaxy (18th ed.) (pp 91-128). Open-Xchange. https://f.hubspotusercontent40.net/hubfs/9391640/Imported%20files/Mobile_Developers_Guide_18th_edition_web.pdf