Click here to Skip to main content
65,938 articles
CodeProject is changing. Read more.
Articles / Mobile

Mobile App Development & Description

4.67/5 (14 votes)
22 Jul 2014CPOL7 min read 24.1K   9  
Mobile App Development & Description

Introduction

In this blog, I am going to discuss about mobile app development, related technologies, types of application in current scenario, from past and the future along with their related operating systems. So buckle up and get ready for this app journey..

Here we go!

Applications | Overview

We are in an era of applications that are continuously making our life easier, better and I can say extended. So just go through all these types and be a part of this app era.

Image 1

Definition

Application is nothing but a set of program or codes that are designed for performing some required or pre defined operations.

There can be several types of applications. Based on their functionality, their definition and working methodology, technologies also differ from each other.

Image 2

Now, I am taking you in an ocean of applications…

Current Scenario | App Development

Here, I am comparing the data of few years on mobile based devices like tablets, smartphones, fablets, etc. with internet on machines so that you can have a feel of current app development market.

Image 3

Application | Types

When we talk about applications, our mind generally takes us to several types of utility apps, gaming apps, social networking apps that’s it, but that’s neither end nor beginning. In the current scenario, when we talk about applications, we need to be specific and more generic like what type of app we are talking about and what the scenario is for that.

So in this portion of this blog, I am going to talk about several existing categories of applications and further I’ll discuss about them in detail. (Here, I am going to cover app categories from past, future perception along with present need and usefulness.)

Image 4

In spite of all these major categories, there can be some derived categories too that fit in every major category according to their development procedure and different- different functionalities.

Most commonly used derived categories general speaking are:

  • Static Apps
  • Dynamic Apps
  • Single Page Apps

Etc.

1. Native Applications

In simple words, we can say:

“Native applications are developed for some specific platforms and get installed on a computing device.”

Native apps are generally developed using an Integrated Development Environment (IDE). IDEs are used in this kind of app development because IDEs provide:

  • Built in support
  • Built in libraries
  • Debugging
  • Version control tools
  • Project management tools

And some other useful utility tools for providing full support in app development.

Image 5

We need to use IDEs because native apps are difficult to built because there is no direct development options such as you just only need to copy and paste some code snippet and it's over.

Native App | Features

Some most common features of native apps are:

Pros
  • MultiTouch support
  • Fast graphics API
  • Fluid Animation
  • Ease of use
  • Build in Components
  • Documentation
Cons
  • Expensive Development work
  • Single Platform

Native App | Technologies

Some most used technologies are:

  • Native iOS
  • Native Android
  • PhoneGap
  • Accelerator Titanium

Native App | Example

Some popular apps are:

  • Walgreens
  • PIM Calendar
  • NFC MAC Address
  • Falling Blocks
  • Place Picker

2: Hybrid Applications

In very common words, we can define hybrid apps as:

“Applications that are a combination of both native and web applications are called hybrid applications.”

As I explained, native apps are developed for some specific platforms and get installed on a computing device and web applications are those that are built for multiple platforms and can work globally on these types of applications can be simply accessed or used by the browser via active internet connection.

Image 6

Thus hybrid apps are a combo of both these categories, having more features than native and web applications individually.

Hybrid App | Features

Some most common features of hybrid apps are:

Pros
  • Can function whether or not device is connected
  • Integration with device files system
  • Integration with web based services
  • An embedded browser to dynamically update online content
  • Works on multiple platforms
Cons
  • Functionality distractions
  • Feature overlapping

Hybrid App | Technologies

Mostly used technologies are:

  • Blackberry native
  • HTML5
  • PhoneGap

Hybrid App | Example

Some of the popular apps are:

  • Banana Republic
  • Financial Times
  • App shot
  • Bucket List

Native VS Hybrid

Here, I am going to compare and contrast between native app and hybrid apps - how they are different and scenarios according to their functionality through this picture.

Just go through this image and feel the difference:

Image 7

Native VS Hybrid VS Web Applications

In this portion, I am showing real scenario of these 3 major app categories:

Image 8

3: Generic Apps

In simple words, we can say:

“A mobile website that will work with all the mobile platforms and phones as well.”

The diagram shown below represents an overview or model of how actually generic applications work and their processing from one step to another without any difference. So, generic application concept is not really new, it was in the market but not at its peak but in the current scenario, it's crossing several leaps and bounds and giving tough competition in the mobile application development market.

Image 9

Generic App | Features

Some measured features of generic apps are:

Pros
  • Doesn’t require specific GUI
  • Content oriented
  • Compact and cozy view
  • Web API based app development
  • Works on multiple platforms
Cons
  • Less user interaction
  • Functionally dependent on requirement
  • Generally static apps
  • Requires active internet connection

Generic App | Technologies

Some preferred technologies are:

  • C#.NET (Microsoft)
  • Android
  • Objective C (iOS)
  • FI_WARE (open Tech)

Generic App | Examples

Some popular apps are:

  • NHL series
  • Tomb Raider
  • HTML5 Learner
  • Flipkart Applicaion
  • Ebay application

4: Dedicated Apps

In common words:

“Dedicated apps are requirement specific static apps that are directly dependent upon the few module requirements and limited functionality.”

Dedicated apps are better than bookmark apps because of several well defined and designed functionality according to requirements.

Image 10

Some people define dedicated apps as:

“A website that is tailored to work on mobile device.”

Dedicated App | Features

Some features of dedicated apps are:

Pros
  • Supports various platforms
  • Functionality dependent app development
  • Can be static or dynamic
  • Based on client requirement architecture
Cons
  • Less functionality
  • Outdated
  • Less user friendly

Dedicated App | Technologies

Some preferred technologies are:

  • HTML5/CSS3
  • Android
  • WIN 8 Environment

Dedicated App | Examples

Some popular apps are:

  • Swift key Keyboard
  • Food planer
  • Timely
  • Keep
  • Duolingo
  • Path talk
  • Minecraft

5: Bookmark Apps

In simple words, bookmark apps are:

“Bookmark Applications let users save web resources that they wish to access later into organized lists that can be shared online or we can say bookmark apps are mobile websites.” Bookmark apps make your website compatible to get viewed in mobile or tablets or mobile versions of website.

Image 11

Bookmark App | Feature

Some specific features are:

Pros
  • Works in organized way
  • Have name different from link
  • You just need to customize your website
  • Can be organized into several folders
  • Drag and drop functionality
Cons
  • Generally static apps
  • Less user interaction
  • Outdated

Bookmark App | Technologies

Bookmarks applications doesn’t use any specific technology, these applications are generally based on browser interaction, so these applications use:

  • HTML5/CSS3
  • Basic Scripting Languages
  • Graphics/APIs

Bookmark App | Example

  • Reddit
  • How-To-Geek
  • InstaPaper
  • Blogmarks
  • Google Bookmarks
  • Pocket

6: Cross Platform Apps

In most simple words, we can say:

“In computing, cross platform means applications/software that can work freely in different platforms or multi platforms.”

Cross platform applications can be based on these two type of functionalities:

  • Run time packages
  • Standard components

Image 12

Cross platform applications are widely used and accepted these days due to their performance and capability of supporting various platforms without and serious causes. In spite of all these, it also gives developers some additional support of libraries, utility tools, etc.

Cross platform Design | view

This view represents the support and design architecture.

Image 13

Cross Platform App | Features

Some features of cross platform apps are:

Pros
  • Can be used in multiple platforms
  • Can function both online and offline mode
  • User friendly environment
  • Ease of development
  • Fully function oriented
  • Combination of hybrid and native apps (in general)
  • Mutitouch functionality
  • Integration with web based services
Cons
  • Security aspects
  • Testing issues
  • Hidden privacy flaws
  • Data lose
  • Requires execution environment

Cross Platform App | Technologies

Some preferred technologies/frameworks are:

  • Phone Gap
  • Open GL
  • Mozilla application platform
  • WebDev
  • WinDev
  • TCL/TK

Cross Platform App | Example

Some popular apps are:

  • Team Play
  • Team Fortress
  • UNO
  • Whatsapp
  • BBMS
  • Shadow Run
  • Lost Planet
  • DUST 514

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)