SlideShare una empresa de Scribd logo
1 de 40
Cross-Platform Development
for Mobile Applications
Anna Troedsson Almér
David Karlsson
tisdag den 11 juni 2013
Mobile business applications
tisdag den 11 juni 2013
Motivation
tisdag den 11 juni 2013
Name: Link: Description:
Titanium http://www.appcelerator.com/products/ HTML+JavaScript
jQuery Mobile http://jquerymobile.com HTML5
Particle code http://www.particlecode.com/features/overview/ aquired by appcelerator, HTML
Unity3d http://unity3d.com/unity/multiplatform/ Gaming, footprint
CoronaSDK http://www.coronalabs.com/products/corona-sdk/ LUA
Marmalade http://www.madewithmarmalade.com/
marmaladesdk/supported-platforms
native CPU instructions
Xamarin http://xamarin.com generates native
MOAI http://getmoai.com LUA
Gideros http://www.giderosmobile.com/ LUA
Cappuccino http://www.cappuccino-project.org Javascript
PhoneGap http://phonegap.com HTML
MoSync http://www.mosync.com HTML
Rhomobile http://www.motorola.com/Business/US-EN/
Business+Product+and+Services/Software+and
+Applications/RhoMobile+Suite
Ruby,HTML
WidgetPad widgetpad.com HTML
Kivy http://kivy.org/#home Scripting, python
PyMob http://pyzia.com generates native
XMLVM http://xmlvm.org/android/ translate dalvik to ios
Adobe AIR http://www.adobe.com/se/products/air/
features.html
http://www.adobe.com/devnet/flash/articles/
app_store_guide.html (app store OK)
NDK http://developer.android.com/tools/index.html
J2ObjC
tisdag den 11 juni 2013
Mobile Application
Development Models
tisdag den 11 juni 2013
Mobile Application
Development Models
tisdag den 11 juni 2013
Mobile Application
Development Models
tisdag den 11 juni 2013
Mobile Application
Development Models
tisdag den 11 juni 2013
Mobile Application
Development Models
tisdag den 11 juni 2013
Mobile Application
Development Models
tisdag den 11 juni 2013
Requirements
Executable application
Approved for markets
Existing development environment
Platform specific UI
HTTP+Cache
Filesystem+DB
tisdag den 11 juni 2013
Mobile Application
Development Models
tisdag den 11 juni 2013
Mobile Application
Development models
tisdag den 11 juni 2013
C++ and NDK
tisdag den 11 juni 2013
C++ and NDK
tisdag den 11 juni 2013
C++ and NDK
tisdag den 11 juni 2013
Titanium
tisdag den 11 juni 2013
Titanium
tisdag den 11 juni 2013
Xamarin
tisdag den 11 juni 2013
Xamarin
tisdag den 11 juni 2013
XMLVM
tisdag den 11 juni 2013
XMLVM
tisdag den 11 juni 2013
Prototype session 1
Basic functionality and
native UI
tisdag den 11 juni 2013
Prototype session 1
compability with
natively written UI
tisdag den 11 juni 2013
Prototype session 1
Performance Results
tisdag den 11 juni 2013
Prototype with NDK C++
VS
Platform Specific Implementation
tisdag den 11 juni 2013
Prototype with NDK C++
POCO C++ library
JSON
tisdag den 11 juni 2013
Prototype with NDK C++
Wrapping Logic and Types, Minimal
Key:
C++ Shared Code
C++ Wrapper for Android
Android Java
Activities
C++
Wrapper
Type Wrappers
C++ Logic C++ Types
iOS Objective-C
ViewControllers
C++ Java
Objective-C
Objective-C++
tisdag den 11 juni 2013
Prototype with NDK C++
Wrapping Logic and Types, Structured separation
Key:
C++ Shared Code
C++ Wrapper for Android
Android Java
Activities
C++
Wrapper
Type Wrappers
C++ Logic C++ Types
C++ Wrapper for iOS (Objective-C++)
iOS Objective-C
ViewControllersType Wrappers
C++
Wrapper
C++ Java
Objective-C
Objective-C++
tisdag den 11 juni 2013
Prototype with NDK C++
JSON Parser
tisdag den 11 juni 2013
Prototype with NDK C++
Performance Results JSON Parser
tisdag den 11 juni 2013
Prototype with NDK C++
HTTP
tisdag den 11 juni 2013
Prototype with NDK C++
Cache
tisdag den 11 juni 2013
Prototype with NDK C++
Cache
tisdag den 11 juni 2013
Prototype with NDK C++
Persistent Cache
Format:
Loading the cache file:
tisdag den 11 juni 2013
Prototype Verification
tisdag den 11 juni 2013
Prototype Verification
1: Describe behaviour in plain text
2: Write a step definition in Ruby
3. Fix app code to make the step pass
4. Run again and see the step pass
tisdag den 11 juni 2013
Prototype Verification
tisdag den 11 juni 2013
Conclusion
Titanium
Javascript
Simple UIs
Xamarin
C#
Separate UIs
NDK
C++
Native UIs
Distributable
Device capabilities
Performance
Testability
tisdag den 11 juni 2013
Thank You!
Categories from:
Run Everywhere!* Cross-Platform Mobile Development, *some restrictions apply
http://www.meetup.com/MoMoa2/events/86722502/
by Brian Genisio Presentation at Mobile Monday Ann Arbor
Xamarin: http://www.xamarin.com by Xamarin Inc.
Titanium: http://www.appcelerator.com/platform/titanium-sdk by Appcelerator Inc.
XMLVM: http://xmlvm.org/overview by XMLVM
NDK: http://developer.android.com/tools/sdk/ndk by Android
Poco C++: http://pocoproject.org by Applied Informatics Software Engineering GmbH
Calabash: http://calaba.sh by Less Painful
Mobile Business Applications:
http://www.sogeti.se/sv/Vara-tjanster/Tjanster/Mobilitet/App-utveckling/
by Sogeti
Our Repository: https://bitbucket.org/devdavidkarlsson/sogeti-masterthesis-crossplatformmobiledevelopment
https://github.com/devdavidkarlsson/Sogeti-MasterThesis-CrossPlatformMobileDevelopment
tisdag den 11 juni 2013

Más contenido relacionado

Similar a Cross Platform Mobile Development for Business Applications

Startup eng-camp 3
Startup eng-camp 3Startup eng-camp 3
Startup eng-camp 3
Jollen Chen
 
Cross Platform Mobile Apps with the Ionic Framework
Cross Platform Mobile Apps with the Ionic FrameworkCross Platform Mobile Apps with the Ionic Framework
Cross Platform Mobile Apps with the Ionic Framework
Troy Miles
 
Building with JavaScript - write less by using the right tools
Building with JavaScript -  write less by using the right toolsBuilding with JavaScript -  write less by using the right tools
Building with JavaScript - write less by using the right tools
Christian Heilmann
 
Kandroid for nhn_deview_20131013_v5_final
Kandroid for nhn_deview_20131013_v5_finalKandroid for nhn_deview_20131013_v5_final
Kandroid for nhn_deview_20131013_v5_final
NAVER D2
 
Why Open Source with Drive M2M Innovation
Why Open Source with Drive M2M InnovationWhy Open Source with Drive M2M Innovation
Why Open Source with Drive M2M Innovation
Ian Skerrett
 

Similar a Cross Platform Mobile Development for Business Applications (20)

Desenvolvimento Mobile Híbrido
Desenvolvimento Mobile HíbridoDesenvolvimento Mobile Híbrido
Desenvolvimento Mobile Híbrido
 
2013년 html5 총정리 (Summary of HTML5 Trend in 2013)
2013년 html5 총정리 (Summary of HTML5 Trend in 2013)2013년 html5 총정리 (Summary of HTML5 Trend in 2013)
2013년 html5 총정리 (Summary of HTML5 Trend in 2013)
 
Ionic - Revolutionizing Hybrid Mobile Application Development
Ionic - Revolutionizing Hybrid Mobile Application DevelopmentIonic - Revolutionizing Hybrid Mobile Application Development
Ionic - Revolutionizing Hybrid Mobile Application Development
 
Startup eng-camp 3
Startup eng-camp 3Startup eng-camp 3
Startup eng-camp 3
 
Cross Platform Mobile Apps with the Ionic Framework
Cross Platform Mobile Apps with the Ionic FrameworkCross Platform Mobile Apps with the Ionic Framework
Cross Platform Mobile Apps with the Ionic Framework
 
HTML5ではないサイトを HTML5へ - Change HTML5 from Not HTML5.
HTML5ではないサイトを HTML5へ - Change HTML5 from Not HTML5.HTML5ではないサイトを HTML5へ - Change HTML5 from Not HTML5.
HTML5ではないサイトを HTML5へ - Change HTML5 from Not HTML5.
 
Building with JavaScript - write less by using the right tools
Building with JavaScript -  write less by using the right toolsBuilding with JavaScript -  write less by using the right tools
Building with JavaScript - write less by using the right tools
 
Tek 2013 - Building Web Apps from a New Angle with AngularJS
Tek 2013 - Building Web Apps from a New Angle with AngularJSTek 2013 - Building Web Apps from a New Angle with AngularJS
Tek 2013 - Building Web Apps from a New Angle with AngularJS
 
Enabling Microservice @ Orbitz - GOTO Chicago 2016
Enabling Microservice @ Orbitz - GOTO Chicago 2016Enabling Microservice @ Orbitz - GOTO Chicago 2016
Enabling Microservice @ Orbitz - GOTO Chicago 2016
 
Kandroid for nhn_deview_20131013_v5_final
Kandroid for nhn_deview_20131013_v5_finalKandroid for nhn_deview_20131013_v5_final
Kandroid for nhn_deview_20131013_v5_final
 
Phone gap
Phone gapPhone gap
Phone gap
 
Lightweight javaEE with Guice
Lightweight javaEE with GuiceLightweight javaEE with Guice
Lightweight javaEE with Guice
 
Phonegap presentation
Phonegap presentationPhonegap presentation
Phonegap presentation
 
Why Open Source with Drive M2M Innovation
Why Open Source with Drive M2M InnovationWhy Open Source with Drive M2M Innovation
Why Open Source with Drive M2M Innovation
 
Angular js mobile jsday 2014 - Verona 14 may
Angular js mobile   jsday 2014 - Verona 14 mayAngular js mobile   jsday 2014 - Verona 14 may
Angular js mobile jsday 2014 - Verona 14 may
 
An Introduction to AngularJS
An Introduction to AngularJSAn Introduction to AngularJS
An Introduction to AngularJS
 
MobileDev: panoramica sullo sviluppo Mobile e sulle possibili alternative .Net
 MobileDev: panoramica sullo sviluppo Mobile e sulle possibili alternative .Net MobileDev: panoramica sullo sviluppo Mobile e sulle possibili alternative .Net
MobileDev: panoramica sullo sviluppo Mobile e sulle possibili alternative .Net
 
Giorgio Mandolini - Rapid application development con titanium appcelerator
Giorgio Mandolini - Rapid application development con titanium appceleratorGiorgio Mandolini - Rapid application development con titanium appcelerator
Giorgio Mandolini - Rapid application development con titanium appcelerator
 
Rapid application development con titanium appcelerator
Rapid application development con titanium appceleratorRapid application development con titanium appcelerator
Rapid application development con titanium appcelerator
 
Html5 tx - preso
Html5 tx - presoHtml5 tx - preso
Html5 tx - preso
 

Último

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Victor Rentea
 

Último (20)

Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKSpring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
 

Cross Platform Mobile Development for Business Applications