Cross Platform Mobile Development for Business ApplicationsDavid Karlsson
Mobility is becoming increasingly important for many companies. The markets for mobile
applications have been growing tremendously the last decade. It is therefore of great
interest to reduce the costs of development and maintenance of these applications.
When developing native applications for multiple platforms some parts of the code will
likely implement the same functionality. This functionality is then implemented in dierent
programming languages, for dierent platforms. Functionalities that are typically the
same on all platforms are network communication, data parsing and business logic. These
functionalities can account for a large part of the code when developing large and complex
applications. Duplication of the code, for these functionalities, could be avoided if common
functionality could be extracted from the applications and put in a shared code base.
The aim of this project is to investigate possible solutions to the problem of code duplication
in the case of a specic business application, developed for iOS and Android. It consists
of a mobile client which performs some transformation of data acquired from a business
system and presents it in the native UIs.
This thesis rst discusses the requirements and constraints which are inferred from the application
type and the company wishing to apply cross-platform development. It also maps
existing cross-platform development methods for this type of application and investigates
to which extent the dierent cross-platform development methods full the requirements.
Finally the most suitable method is used in a practical context.
The objectives of this project are to provide the company with a recommendation of a
method as well as a prototype proving the concept of this method. This project will focus on possible solutions for mobile business applications with native
UIs.
The conclusion of the project is that native C++ is the most suitable method for this
type of application. It fulls all requirements, but further research is needed regarding
performance.
Cross Platform Mobile Development for Business ApplicationsDavid Karlsson
Mobility is becoming increasingly important for many companies. The markets for mobile
applications have been growing tremendously the last decade. It is therefore of great
interest to reduce the costs of development and maintenance of these applications.
When developing native applications for multiple platforms some parts of the code will
likely implement the same functionality. This functionality is then implemented in dierent
programming languages, for dierent platforms. Functionalities that are typically the
same on all platforms are network communication, data parsing and business logic. These
functionalities can account for a large part of the code when developing large and complex
applications. Duplication of the code, for these functionalities, could be avoided if common
functionality could be extracted from the applications and put in a shared code base.
The aim of this project is to investigate possible solutions to the problem of code duplication
in the case of a specic business application, developed for iOS and Android. It consists
of a mobile client which performs some transformation of data acquired from a business
system and presents it in the native UIs.
This thesis rst discusses the requirements and constraints which are inferred from the application
type and the company wishing to apply cross-platform development. It also maps
existing cross-platform development methods for this type of application and investigates
to which extent the dierent cross-platform development methods full the requirements.
Finally the most suitable method is used in a practical context.
The objectives of this project are to provide the company with a recommendation of a
method as well as a prototype proving the concept of this method. This project will focus on possible solutions for mobile business applications with native
UIs.
The conclusion of the project is that native C++ is the most suitable method for this
type of application. It fulls all requirements, but further research is needed regarding
performance.