Lecture 1 - Introduction To Mobile Applications Development
Lecture 1 - Introduction To Mobile Applications Development
Mobile Applications
Development
T. Fatima Al-azazi
Agenda
2
What is Mobile Application?
3
Mobile Applications vs Web Applications
Mobile Applications Web Applications
Pros: Pros:
1. faster than web apps 1. No installation
2. Provides more 2. Maintenance is easy
functionality 3. Self-upgradation
3. No need of internet 4. Quick implementation
connectivity 5. Does not require approval
4. Provides security from app store.
5. Easy to implement.
Cons:
Cons:
6. Need internet connectivity
6. Increased development 7. Slow
costs 8. Less availability
7. No compatibility between 9. Less guaranteed security. 4
different platforms
Mobile Application Development Models
5
Native application development model
● Used to create mobile app which supports single
platform/operating system.
● It uses programming language which is the operating system
dependent.
● For example, Java or Kotlin for android OS and swift or objective
C for IOS.
● Native application development model will have access to all
features in a feature set of device, so that it gives a good
performance.
● Tools that can be used in native application development model
are android studio, android IDE and ATOM
Advantages:
1. Gives best performance
2. Provides more security 6
Hybrid application development model
● Combines elements of web applications with mobile application.
● Codebase needs to be developed using web technologies like HTML
and CSS.
● Then, the codebase will be wrapped inside the container.
● The container is web view which will act as a browser to load the
application.
● Native plugins specific to a mobile device can be installed
specific to mobile device, so that features of mobile device can be
accessed through web application.
● Tools to be used in hybrid app development are Cordova, Ionic,
etc.
● Example applications developed using hybrid application
development model are Gmail, Evernote, etc.
Advantages:
1. Uses agile process model 7
Cross-platform application development model
● Bridges are used to connect codebase written in framework-dependent
programming language to native components.
● Cross-platform applications do not depend on platforms.
● Easy to implement, cost-effective and provide good functionality.
● Tools to be used in cross-platform application development model are
React Native, NativeScripts and Flutter.
● Examples of applications developed using cross-platform application
development model are Instagram, GoogleAds.
Advantages:
11
Mobile
Application
Development
Models
12
13
WHAT IS FLUTTER
14
15
16
17
18
Why Flutter?
● No JavaScript bridge:
○ The JavaScript bridge, used in most cross-platform
options, is a major bottleneck in development and in
your application’s performance.
○ apps don’t lose any performance or productivity when
running on a user’s device.
● Compile time
○ In Flutter, a full compile generally takes less than 30
seconds, and incremental compiles take less than a
second (hot reloading).
● Write once, test once, deploy everywhere
○ Not only do you get to write your app one time and 19
Why Flutter? Part 2
● Code sharing:
○ With Flutter and Dart, your web and mobile apps can
share all the code except each client’s views.
○ Flutter will be able to target Web and Desktop, too.)
○ In practical terms, this means you are super productive.
● Productivity and collaboration
○ Gone are the days of separate teams for iOS and
Android.
● Code maintenance:
○ Nothing is more satisfying than fixing a bug once and
having it corrected on all your clients.
20
WHAT IS DART !!
21
WHY DART ?!
● Dart is a platform-independent language and supports all
operating systems such as Windows, Mac, Linux, etc.
● It is an open-source language, which means it is available
free for everyone. It comes with a BSD license and is
recognized by the ECMA standard.
● It is an object-oriented programming language and
supports all features of oops such as inheritance,
interfaces, and optional type features.
● Dart is very useful in building real-time applications because
of its stability.
● Dart comes with the dar2js compiler which transmits the
Dart code into JavaScript code that runs on all modern web
browsers.
● The stand-alone Dart VM permits Dart code to run in a
command-line interface environment. 22
23
24
Assignment 1
25