0% found this document useful (0 votes)
7 views24 pages

Mobile Application Development

Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1/ 24

MOBILE

APPLICATION
DEVELOPMEN
T

Shujat Hussain
INTRODUCTION OF MOBILE
APPLICATIONS
Talking about the mobile applications, the first
thing that comes to mind are the apps like
Whatsapp, Instagram, swiggy, etc that we use in
our everyday life. Ever thought about how these
apps are made? Which technology is used? Let’s
discuss what technologies or frameworks can be
used to develop a mobile application
Mobile apps are majorly
CONTINUE….. developed for 3 Operating
System. :

Android

IOS

Windows
• There are 3 different ways to develop Mobile apps: –

• 1st Party Native App development


• Progressive web Application
• Cross-Platform Application
1. 1ST PARTY NATIVE APP DEVELOPMENT
These types of apps normally run in the native devices, that
is, it runs only in the OS that it is specifically designed for it.
These apps cannot be used on different devices using a
different OS. The apps that are developed for android are
normally coded using Java or Kotlin languages. The IDE
normally used for android app development is Android
Studio which provides all features and the apps that are
developed for IOS are generally coded in Swift language or
Objective-C. The IDE suggested for IOS App Development is
XCode.
ADVANTAGES OF 1ST PARTY NATIVE APP DEVELOPMENT

The performances of these apps are very high these apps


very fast compared to any other apps.
We have easy access to all the features and APIs.
The community is widespread so all your doubts and
errors can be discussed and solved easily.
Updates are available on the same day.
DISADVANTAGES OF 1ST PARTY NATIVE APP DEVELOPMENT

• The development speed is too slow as we


need to code it again for different OS.
• And this category doesn’t support open
source.
2. PROGRESSIVE WEB APPLICATION
Progressive web apps are essentially a website which
runs locally on your device. The technologies used are
Microsoft Blazor, React, Angular JS, Native Script,
Iconic. These technologies normally used for web
development propose. The apps’ UI is developed the
same way as they are developed while developing the
website. This category has many ups and downs let’s
start with the advantages of Progressive web apps.
ADVANTAGES OF PROGRESSIVE WEB APPLICATION

• The main advantage of this process is that its


development speed is fast the same code base is used
for IOS, Android, web applications.
• The web development team can be repurposed to
develop the mobile application.
• No installation required.
DISADVANTAGES OF PROGRESSIVE WEB APPLICATION:

• The major disadvantage is that PWA don’t have access to all the
feature and so the user experience is not that good IOS does not
support all the features of PWA
• The UI for development is bespoke i.e. the buttons, edit texts need
to be programmed which was not necessary for the 1st party
native Apps.
• The community is not that wide spread.
3. CROSS-PLATFORM APPLICATION
These are frameworks that allow developing total
native applications which have access to all the
native features of IOS and Android but with the
same code base. These apps run on both Android
and IOS. So normally the development speeds of
these apps are very fast and the maintenance cost
is low. The performance speed is comparatively
low to 1st party native apps but faster than PWA.
REACT NATIVE

• React Native is Facebook’s cross-platform solution


which uses the language JavaScript And the
preferred IDE is WebStrome & Visual Studio Code.
Same like Xamarin React Native has totally native
UI/UX and gives access to all features. And the
updates are released the same day by Facebook as
Android and IOS.
FLUTTER
Flutter is Google’s cross-platform solution which
uses the language, Dart. The IDE preferred is
Android Studio, IntelliJ IDE, and Visual Studio Code.
The UI/UX is bespoke and Flutters has to come up
with their new libraries whenever Android and IOS
comes up with an update to mimic those update.
The community is fast growing.
ADVANTAGES OF CROSS-PLATFORM APPLICATION

• The apps’ development speed is very high as


they use the same code base for both Android
and IOS.
• The apps’ maintenance cost is low as the errors
and updates as to be countered only once.
DISADVANTAGES OF CROSS-PLATFORM APPLICATION

• Slow Code Performance With Limited


Tool Availability.
• Limited User Experience i.e. these apps
does not have access to Native only
features.
CLIENT-SIDE TECHNOLOGIES IN MOBILE
APPLICATION DEVELOPMENT
Client-side technologies in mobile application development are responsible for
rendering the user interface (UI) and handling user interactions on mobile
devices. These technologies determine how an app looks, feels, and responds to
user input.
There are three main approaches to mobile app development when considering
client-side technologies:
1.Native Development (Platform-Specific)
2.Hybrid Development (Web-Based + Native)
3.Cross-Platform Development (Single Codebase for Multiple Platforms)
1. NATIVE DEVELOPMENT (PLATFORM-SPECIFIC)
• Native development involves using platform-specific technologies and
frameworks provided by Apple (iOS) and Google (Android). These apps are
optimized for performance and use device features efficiently.
• Technologies for Native Development
• a) Android (Java/Kotlin)
• Java: The traditional programming language for Android apps.
• Kotlin: The modern, preferred language for Android development due to its
concise syntax and improved safety.
• Android SDK: Provides APIs for building Android apps.
• Android Studio: The official IDE for Android app development.
B) IOS (SWIFT/OBJECTIVE-C)
• Swift: A powerful, modern language by Apple, preferred for iOS development.
• Objective-C: The older language still used in legacy iOS applications.
• Xcode: Apple’s official IDE for developing iOS applications.
• iOS SDK: Includes frameworks for UI, data handling, and device capabilities.
• Advantages of Native Development
• ✔ Best performance and efficiency.
✔ Direct access to device hardware and OS features.
✔ Best suited for complex apps requiring high responsiveness.
• Disadvantages of Native Development
• ❌ Higher development cost and time (separate apps for iOS & Android).
❌ Requires specialized knowledge of both platforms.
2. HYBRID DEVELOPMENT (WEB-BASED + NATIVE)

• Hybrid applications combine web technologies with a native shell, allowing apps
to run inside a WebView while accessing some native features.
• Technologies for Hybrid Development
• Apache Cordova (Previously PhoneGap)
• Ionic Framework
• Adobe PhoneGap
• These frameworks allow developers to build apps using HTML, CSS, and
JavaScript while still accessing native device capabilities via plugins.
ADVANTAGE AND DISADVANTAGES

• Advantages of Hybrid Development


• ✔ Single codebase for multiple platforms.
✔ Faster development and easier maintenance.
✔ Web developers can easily transition to mobile development.
• Disadvantages of Hybrid Development
• ❌ Performance is lower than native apps.
❌ UI may not feel as smooth as in native applications.
❌ Dependency on third-party frameworks for native feature access.
3. CROSS-PLATFORM DEVELOPMENT (SINGLE
CODEBASE FOR MULTIPLE PLATFORMS)

• Cross-platform frameworks allow developers to write a single codebase and deploy it on


multiple platforms (iOS & Android). These frameworks use native rendering engines for
better performance than hybrid apps.
• Technologies for Cross-Platform Development
• a) Flutter (Dart) – Preferred Framework
• Developed by Google
• Uses Dart programming language
• UI is built with widgets, allowing for customizable designs
• Features hot reload for instant updates
• Best for modern mobile applications
B) REACT NATIVE (JAVASCRIPT)

• Developed by Facebook
• Uses JavaScript and React
• Allows for some native module integration
• Strong community support
C) XAMARIN (.NET & C#)

• Developed by Microsoft
• Uses C# and .NET framework
• Good for businesses using Microsoft technologies
• Direct access to native APIs
• d) Other Notable Frameworks
• SwiftUI (Apple): For iOS development using Swift.
• Jetpack Compose (Google): For modern UI development in Android using
Kotlin.
ADVANTAGES AND DISADVANTAGES

• Advantages of Cross-Platform Development


• ✔ Single codebase for both iOS & Android.
✔ Faster development compared to native apps.
✔ Uses native rendering for better performance than hybrid apps.
• Disadvantages of Cross-Platform Development
• ❌ Still not as fast as fully native apps.
❌ Some platform-specific features require additional coding.

You might also like