Mobile
Computing 2
Mobile Application and
Development
Learning Objectives
1 4
Define and Define native, web,
understand Mobile hybrid and
Applications progressive web
apps
2 5
Understand mobile Mobile front-end
app development frameworks
3
Enumerate types of
mobile application
Mobile Application
● A mobile application, most commonly referred
to as an app, is a type of application software
designed to run on a mobile device, such as a
smartphone or tablet computer. Mobile
applications frequently serve to provide users
with similar services to those accessed on PCs.
● Apps are generally small, individual software
units with limited function. This use of app
software was originally popularized by Apple Inc.
and its App Store, which offers thousands of
applications for the iPhone, iPad and iPod
Touch.
Brief history of Mobile Applications
1994
IBM introduced ‘Simon’
This Personal Digital 2007
Assistant could send and Apple launched its
receive faxes and emails. iPhone
1984 2002
The launch of the Psion Organiser. Blackberry launched its
This was the "World’s First Practical smartphone. This featured an
Pocket Computer". It was loaded email function. It quickly
with apps such as a calculator and a became the ‘must-have’ device
clock. for the business person on the
move.
Mobile App Development
● Mobile application development is the
process of creating software applications that
run on a mobile device, and a typical mobile
application utilizes a network connection to
work with remote computing resources.
Hence, the mobile development process
involves creating installable software bundles
(code, binaries, assets, etc.) , implementing
backend services such as data access with an
API, and testing the application on target
devices.
How mobile apps are built?
● Mobile apps are built using a variety of
programming languages and frameworks,
and they can be downloaded and
installed from app stores such as
the Apple App Store or Google Play.
Apps that are built using
● Facebook
● Uber
● Slack
● Accenture
● LinkedIn
● WhatsApp
● Instagram
● Airbnb
● Twitter
Apps that are built using
● Coursera
● Evernote
● Netflix
● Pinterest
● Uber
● Trello
● Duolingo
● Airbnb
3 Main types of Mobile Applications
Native Apps
Progressive Web
Apps
Hybrid Apps
Native Apps
● A native app is written for use on a
specified platform or device. (Apple's iOS and
Google's Android account for 99% of mobile
devices.) Because of this, native apps can take
advantage of device-specific hardware and
software (e.g., a camera). They are usually
highly performant and offer the mobile user a
rich experience. However, the user must
download the app from a store. This is often a
barrier to adoption. Native apps are also, by
definition, not cross-platform, with a
development process unique to each.
01
Social Media Apps like
Facebook, Instagram
02
Examples of Mobile Gaming Apps like
Pokemon Go
Native Apps 03
Navigation Apps like Waze,
Google Maps
04
Fitness App like Strava
Progressive Web App
● a mobile web application needs only a
web browser to work. Unlike native
apps, progressive web apps (PWAs) will
therefore work on any mobile platform. Like
native apps, PWAs can work offline, send push
notifications, and access device hardware, such
as cameras or GPS. The user experiences are
similar to native apps on mobile and desktop
devices without downloading or updating
hassles, with great benefit — they run well on
top of poor connectivity.
Examples of Progressive Web Apps (PWA)
2048 Game Uber
Mobile Gaming App
03 04 Transportation and
navigation app
Starbucks App 02 05 Pinterest
E-commerce App Social curation app
Spotify 01 06 Threads by Meta
Music App Social media app
Hybrid App
● a hybrid app combines aspects of native
and web apps. You can think of them as web
apps that have been put in the shell (or
container) of a native app. Like native apps,
hybrid apps must be downloaded from an app
store. Once installed on the mobile device, the
shell uses an embedded browser to access the
capabilities of the native platform. Hybrid apps
have several advantages – and some
limitations.
1 X
4 Gmail
Examples of
Hybrid App
2 Evenote
5 Binance
Apple
3 App Store
Pros and Cons of PWA, Hybrid and Native
NATIVE PWA HYBRID
Pros
Best runtime performance Same app is available both Shared code base between
for web and mobile web and mobile apps
Direct access to API’s No installation required, Using web development
accessible through a URL skillset for building mobile
apps
Cons
Higher costs when building Limited support for Lower performance
and maintaining your app native device features compared to native apps
Multiple code-bases for each App capabilities depend Limited support for
platform on the browser in use native device features
Mobile Application Development Lifecycle
● There are two interlinked core components of a
mobile application: 1) the mobile application “Front-
End” that resides on the mobile device, and 2) the
services “Back-End” that supports the mobile front-
end.
● As connectivity and network capabilities
improved, the applications became increasingly
connected to sources of data and information that
lived outside of the app itself, and the apps became
increasingly dynamic as they were able to update
their UI and content with data received over the
network from queries to data sources.
How Front-end 'Talks'
to the Back-end?
Front-end Mobile Application
● The mobile front-end is the visual and
interactive part of the application the user
experiences.
● It usually resides on the device, or there
is at least an icon representing the app that is
visible on the home screen or is pinned in the
application catalog of the device. The
application can be downloaded from the
platform app store, side-loaded directly onto
the device, or can be reached through the
device’s browser, as in the case for PWAs.
Mobile Application Front-End Frameworks
● A mobile app framework is a
software creation platform that includes
tools and software, compilers, debugging
tools, and programming interfaces,
among other things. Thus, a developer
creates the application’s source code
and the framework and uses various
elements to generate the application for
the different mobile devices.
Front-End Frameworks
React
Native
Flutter
Ionic
React Native
● React Native, built and supported by
Facebook, is an accessible, cross-platform
application development framework that
has quickly become the preferred option of
programmers. React Native facilitates the
development of Android and iOS mobile
applications. The most exemplary
instances of React Native apps are those
from prominent businesses like Tesla,
Airbnb, Skype, or Amazon Prime.
Flutter
● Flutter is a comprehensive and precise
framework that contains widgets, a rendering
engine, debugging and integrating APIs, and
resources to assist developers in creating
and deploying beautiful mobile applications.
Flutter has been used by a number of well-
known organizations, including Google and
Abbey Road Studios.
Ionic
● Ionic is an explicit framework for crafting
Progressive Web Apps (PWAs), hybrid, and
cross-platform mobile applications. Ionic is
an accessible framework that uses Apache
Cordova (PhoneGap) plus Angular to enable
programmers to create Android and iOS
applications that seamlessly operate
together.
Thank
You!