Date post: | 14-Apr-2017 |
Category: |
Mobile |
Upload: | mounaim-latif |
View: | 193 times |
Download: | 1 times |
Cross platform approach for mobile application development : a survey
Mounaim LATIF
Presented by :
IT4OD 2016
TABLE OF CONTENTS
INTRODUCTIONCROSS-PLATFORMS
APPROACH’SREQUIREMENT FOR CROSS-PLATFORMSCONCLUSION &
FEATURES WORKS
2
INTRODUCTION
Service
I need to make my
service accessible for
all devices
The market for mobile development has grown substantially. Companies have begun to adapt the new mobile trends by recognizing the need for smartphone and tablet access to business apps.
3
INTRODUCTION : NATIVE DEVLOPEMENT
• To address the above need we have to develop natively for each platform
• The fact of having different SDK tools for each platform. Create the following issues:
$
Development time increases
Cost increases4
INTRODUCTION : CROSS-PLATFORMS
The best solution is to develop with one common platform and deploy to many
CROSS-PLATFORMS
The main goal with cross-platforms is maintaining the same features and performance as native development .
Cross-platforms reduce time and cost since the code is written to target multiple platforms
There exist different approaches
5
CROSS-PLATFORMS APPROACH’S : WEB APPROACH
Application is implemented as a single optimized website
This optimization has to take into consideration the different screen sizes of the devices and their usage philosophy
6
RenderCommon Optimized Web
Site
Back-End
CROSS-PLATFORMS APPROACH’S : WEB APPROACH
No mobile application updates are required
Limited access to the device’s native functionalities
Time taken to render web pages
Use a standard technologie which is : HTML, CSS and JAVASCRIPT
7
WEB App
The app is not available in app stores
Existing platforms
CROSS-PLATFORMS APPROACH’S : HYBRID APPROACH
Back-End
Uses browser engine in the device to embed the HTML content in the native web container
Native functionalities are accessible through the use of an abstract JavaScript bridgeSpecific
API
Specific API
Specific API
System operations
For access to native functionalities
JavaScript Bridge
8
Native web container
Web Rendering Engine
CROSS-PLATFORMS APPROACH’S : HYBRID APPROACH
Distributable through application stores
No access to native look and feel
Less performant compared to the native interfaces
Native features are available through the JavaScript abstract layer
9
Hybrid App
Existing platforms
CROSS-PLATFORMS APPROACH’S : INTERPRETED APPROACH
Use common language to write the code of user interface will be converted to native interface
Native features are provided by on abstract layer that interprets on runtime across different platforms to access the native APIs
10Common Back-End
Write interface with common language
Generate native components from common environment
Abstract layer (to have access to native features)
UI Native Components
UI Native Components
UI Native Components
CROSS-PLATFORMS APPROACH’S : INTERPRETED APPROACH
Distributable through application stores
Performance degradation that is caused by calling the abstract layer on runtime
Depend to development environment
Native features are available through the abstract layer
Native user interface
11
INTERPRETED APP
Existing platforms
CROSS-PLATFORMS APPROACH’S : CROS-COMPILED APPROACH
Back-End
Full source code is written with common language.
Cross-compiler compiles the source code into particular native code by converting the source code to native binaries
Common language
iOS ComplierAndroid Complier WP Complier
Native binariesNative binaries Native binaries
12
CROSS-PLATFORMS APPROACH’S : CROS-COMPILED APPROACH
Distributable through application stores
Some specific platform features not available . In this case we have to write code for each platform.
Attain native performance
Native user interface
13
INTERPRETED APP
CROS-COMPILEDAPP
Existing platforms
CROSS-PLATFORMS APPROACH’S : MODEL DRIVEN ARCHITECTURE APPROACH
Based on modelling activities
We use MDA to design the user interface once for multiple platforms (PIM) and then to generate the corresponding platform specific models (PSM) for each platform
14Common Back-End
User Interface Independent Model (PIM)
Model To Model Transformation
Modeling
Model To Model Transformation
Model To Model Transformation
Android UI specific model
iOS UI specific model
WP UI specific model
Model To codeModel To code Model To code
Native Code Native code Native code
CROSS-PLATFORMS APPROACH’S : MODEL DRIVEN APPROACH
Distributable through application stores
Limited to the application domain of the model language.
Attain native performance
Native user interface
Use native features without runtime intermediate
generated code remains incomplete and should be manually completed with the use of the native language and SDK tools.
15
MDA APP
THE REQUIREMENT FOR CROSS-PLATFORMS Application Scalability and maintainability
Resources consumption
Development environment
Security
Access to devices features
16
CONCLUSION & PERSPECTIVE
All approaches and tools presented have their own limitations that may differ from an approach to another.
Small percentage of companies that have had satisfactory experience using existing cross-platforms .
We have notice that the MDA approach is the most expandable compared to the other approaches.
Our future studies will be focused on this approach. The goal will be to present an MDA based solution and resolve inconvenient of this approach.
Resolve inconvenient
17
THANK YOUFOR YOUR ATTENTION