3. INTRODUCTION
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
4. 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 increases
4
5. 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
6. 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
Render
Common Optimized Web Site
Back-End
7. 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
8. 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 bridge
Specific
API
Specific API
Specific API
System
operations
For access to native
functionalities
JavaScript Bridge
8
Native web container
Web Rendering Engine
9. 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
10. 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
10
Common 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
11. 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
12. 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 binaries Native binaries Native binaries
12
13. 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-COMPILED
APP
Existing platforms
14. 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
14
Common 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
15. 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
MDAAPP
16. THE REQUIREMENT FOR CROSS-
PLATFORMS
Application Scalability and maintainability
Resources consumption
Development environment
Security
Access to devices features
16
17. 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