1 - Intro to AppDev
1 - Intro to AppDev
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,
• 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.
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.
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.
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.”
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!