0% found this document useful (0 votes)
9 views

1 - Intro to AppDev

Uploaded by

bonakiduza1024
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
9 views

1 - Intro to AppDev

Uploaded by

bonakiduza1024
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 25

Intro to Application

Development?
HAROLD B. LLAGONO, MIT
In today's digital age, the demand for software
applications is skyrocketing. Whether it's a mobile app,
web app, or enterprise software, applications have
become essential tools for businesses and individuals
alike. However, the process of application development
is not a one-size-fits-all approach. It involves careful
planning, programming, and implementation.
What is Application Development?
Application development also known as app development is the process of
planning, designing, creating, testing, and deploying a software application to
perform various business operations. It can be done by massive organizations with
large teams working on projects, or by a single freelance developer. Application
development defines the process of how the application is made and generally
follows a standard methodology.

There are lots of factors that go into how application development is done. You
must consider the size of the project, how specific the requirements are, how much
the customer will want to change things, how large the development team is, how
experienced the development team is, and the deadline for the project.
What are the benefits of developing applications?
An app can help businesses build and strengthen their brand, giving them a
competitive advantage in their industry. Some of the benefits and advantages of
application development are,

• Improved customer engagement


The application provides businesses with an additional channel to engage
with their customers. It allows customers to access products or services quickly,
receive updates, and provide feedback.

• Enhanced branding
App can help businesses build and strengthen their brand by providing a
platform to showcase their products or services and share their values and
mission.
What are the benefits of developing applications?
• High efficiency
Composable applications can also help businesses improve their internal
operations, allowing them to streamline processes, reduce costs, and improve
productivity.

• Data collection and analysis


An app can provide businesses with valuable data on user behavior and
preferences, which can be used to improve marketing strategies and enhance
customer experiences.
What are the main steps in application development?
The app development process
is complex and multi-staged,
requiring careful planning,
designing, building, testing,
and launching. It is a
collaborative effort that
involves different teams and
professionals working together
to create an app that meets
the needs and expectations of
users.
What are the main steps in application development?
App development is linked with the software development life
cycle. The basic stages and steps of app development SDLC are
as follows

• Planning and research


• Design and prototyping
• Code development
• Testing and optimization
• Release and maintenance
What are the main steps in application development?
1. Planning and research
In this stage, the app's purpose must be clearly laid out to all parties.
Developers research hardware and software requirements, marketers
study feasibility and demand on the market, and business teams
analyze competition and opportunities for growth, among other things.

2. Design and prototyping


Developers define a design to satisfy the requirements. They usually
start on paper with draft sketches. They can then create wireframes to
visualize the app's structure better and create a prototype to identify
potential problems.
What are the main steps in application development?
3. Code development
Developers now write the code the app needs to function as intended
based on the iterations and initial testing. This stage has two types of
development: front-end development—the user side that includes UX
and UI; and back-end development, which is the server side.

4. Testing and optimization


The app undergoes formal testing with users to verify the functions and
usability of the app and identify user difficulties that may have been
overlooked during prototyping.
What are the main steps in application development?
5. Release and maintenance
Once testing is done, the app can now undergo final production and be
released. After deployment, the team needs to monitor for possible
bugs or other issues and respond to them quickly. Changes and
enhancements to the app can be done after release, but they must
undergo strict testing and control to measure their effectiveness.
How is app development different from software
development?
App development and software development are two distinct areas, although they
share some similarities. The key differences between app development and
software development are:
App development Software development
1. Focused on implementing the right codes and meeting the quality
1. Focused on design, user experience, and customizable features.
standards.

2. The process involves strategy, design and branding, coding and 2. The process involves conceiving, specifications, designing,
development, launch, maintenance and optimization. programming, documenting, testing, and launching.

3. Apps are generally designed to perform specific tasks and are 3. Software applications have a broader range of features and
usually simpler. capabilities.

4. App development usually has a faster release cycle, with 4. Software development has a relatively longer release cycle as it
updates, and new versions released more frequently. involves intense coding and specifications to be met.
SOFTWARE AND HARDWARE TECHNOLOGIES
Mobile App usage has grown exponentially in the past decade. It is estimated
that application downloads will increase up to 352 billion by 2021.With this, we
can observe a neverending competition between different app developer and
companies.

The following are the different technologies that an app developer uses today:
• Flutter
• Java
• Python
• Swift
• React Native
• Kotlin
SOFTWARE AND HARDWARE TECHNOLOGIES
We also have Cordova, Ionic, Xamarin, Unity and more! But in this lesso
n we will focus on these six mentioned above.

Flutter is Google’s UI toolkit for building beautiful, natively compiled


applications for mobile web, and desktop from a single codebase.
What is Flutter?
Flutter is an open source framework developed and supported by
Google. Frontend and full-stack developers use Flutter to build an
application’s user interface (UI) for multiple platforms with a single
codebase.

When Flutter launched in 2018, it mainly supported mobile app


development. Flutter now supports application development on six
platforms: iOS, Android, the web, Windows, MacOS, and Linux.

Flutter uses the open-source programming language Dart, which was


also developed by Google. Dart is optimized for building UIs, and many
of Dart’s strengths are used in Flutter.
What is Java?
Java is a widely-used programming language for coding web applications. It has
been a popular choice among developers for over two decades, with millions of Java
applications in use today. Java is a multi-platform, object-oriented, and network-
centric language that can be used as a platform in itself. It is a fast, secure, reliable
programming language for coding everything from mobile apps and enterprise
software to big data applications and server-side technologies.
What is Java programming language used for?
What is Java programming language used for?

Because Java is a free-to-use and a versatile language, it builds localized and distributed software. Some common
uses of Java include:

1. Game Development
Many popular mobile, computer, and video games are built in Java. Even modern games that integrate
advanced technology like machine learning or virtual reality are built with Java technology.
2. Cloud computing
Java is often referred to as WORA – Write Once and Run Anywhere, making it perfect for decentralized cloud-
based applications. Cloud providers choose Java language to run programs on a wide range of underlying platforms.
3. Big Data
Java is used for data processing engines that can work with complex data sets and massive amounts of real-
time data.
4. Artificial Intelligence
Java is a powerhouse of machine learning libraries. Its stability and speed make it perfect for artificial
intelligence application development like natural language processing and deep learning.
5. Internet of Things
Java has been used to program sensors and hardware in edge devices that can connect independently to the
internet.
What is Python?
Python is a programming language that is widely used in web
applications, software development, data science, and machine
learning (ML). Developers use Python because it is efficient
and easy to learn and can run on many different platforms.
Python software is free to download, integrates well with all
types of systems, and increases development speed.
What are the benefits of Python?
• Developers can easily read and understand a Python program because it has basic,
English-like syntax.
• Python makes developers more productive because they can write a Python program
using fewer lines of code compared to many other languages.
• Python has a large standard library that contains reusable codes for almost any task. As a
result, developers do not have to write code from scratch.
• Developers can easily use Python with other popular programming languages such as
Java, C, and C++.
• The active Python community includes millions of supportive developers around the globe.
If you face an issue, you can get quick support from the community.
• Plenty of helpful resources are available on the internet if you want to learn Python. For
example, you can easily find videos, tutorials, documentation, and developer guides.
• Python is portable across different computer operating systems such as Windows, macOS,
Linux, and Unix.
What is Swift?
According to Swift Website, Swift is a powerful and intuitive programming language
for macOS, iOS, watchOS, tvOS and beyond. Writing Swift code is interactive and
fun, the syntax is concise yet expressive, and Swift includes modern features
developers love. Swift code is safe by design, yet also produces software that runs
lightning‐fast.

Swift is a general‐purpose programming language built using a modern approach to


safety, performance, and software design patterns.

The goal of the Swift project is to create the best available language for uses ranging
from systems programming, to mobile and desktop apps, scaling up to cloud
services. Most importantly, Swift is designed to make writing and maintaining correct
programs easier for the developer. To achieve this goal, we believe that the most
obvious way to write Swift code must also be:
Swift
• Safe. The most obvious way to write code should also behave in a safe manner.
Undefined behavior is the enemy of safety, and developer mistakes should be caught
before software is in production. Opting for safety sometimes means Swift will feel strict,
but we believe that clarity saves time in the long run.
• Fast. Swift is intended as a replacement for C‐based languages (C, C++, and Objective‐
C). As such, Swift must be comparable to those languages in performance for most tasks.
Performance must also be predictable and consistent, not just fast in short bursts that
require clean‐up later. There are lots of languages with novel features — being fast is rare
• Expressive. Swift benefits from decades of advancement in computer science to offer
syntax that is a joy to use, with modern features developers expect. But Swift is never
done. We will monitor language advancements and embrace what works, continually
evolving to make Swift even better.
Watch here for more details about swift: https://youtu.be/O7x5PpnWT8o
Installation requirement: macOS / Linux
React Native
The “motto” of React Native is
“Learn once, write anywhere.”

React Native is an open‐source


mobile application framework created
by Facebook, Inc. It is used to
develop applications for Android,
iOS, Web by enabling developers to
use React along with native platform
capabilities
Kotlin
Kotlin was introduced by its website as “A modern
programming language that makes developers happier.”

Kotlin basically is good for:


• Mobile cross‐platform
• Native
• Server‐side
• Web development
• Data science
• Android
Features of Kotlin:
• Concise ‐ Drastically reduce the amount of boilerplate
code
• Safe ‐ Avoid entire classes of errors such as null
pointer exceptions
• Interoperable ‐ Leverage existing libraries for the JVM,
Android, and the browser
• Tool‐friendly ‐ Choose any Java IDE or build from the
command line
Kotlin
Hardware requirements of the different development tools are quite low most of the time. It is the IDE that usually requires much
resources due to its features. Mobile app development may require more resources also if you will be using an “Emulator” to
test your application.

Cross‐platform mobile frameworks used by software developers worldwide in 2019 and 2020
Summary
• There are lots of tools/technologies available in developing an app. In this modern
time, tools for cross‐platform development are emerging to the top to offer an
application for different platforms without writing the application from scratch
natively.
• These tools are quite unique in different aspects in application development, from
providing the developer with an “easy to learn” approach to fully‐featured tool for
development. At the end of the day, application developers choose, which tool or
language they will use to develop an application. A tool they may consider
“friendly”, “secure”, and works as they need it.
Thank
You!

You might also like