wipjam cross platform tools - dec 2013

29
Cross Platform Mobile App Development Tools @MarkArteaga [email protected] www.markarteaga.com Mark Arteaga | Founder @RedBitDev www.RedBitDev.com

Upload: mark-arteaga

Post on 19-May-2015

483 views

Category:

Technology


2 download

DESCRIPTION

You typically need to develop for more than one type of mobile platform – so how does that work? What is the difference between a native app and web app? This session will uncover the decisions and tools available to make your application available on the iOS, Android, Windows Phone/Windows 8 and other platforms of importance to your end users to maximize your reach and minimize your maintenance effort.

TRANSCRIPT

Page 1: WIPJam   Cross Platform Tools - Dec 2013

Cross Platform Mobile App Development Tools

@MarkArteaga

[email protected] www.markarteaga.com

Mark Arteaga | Founder @RedBitDev

www.RedBitDev.com

Page 2: WIPJam   Cross Platform Tools - Dec 2013

WHY ARE WE HERE?

Page 3: WIPJam   Cross Platform Tools - Dec 2013

CHALLENGE & GOALS?

Page 4: WIPJam   Cross Platform Tools - Dec 2013

• Target all relevant platforms• Reduce development time• Reduce development costs• Make end customers happy on all

platforms (BYOD)• Share common code across platforms

Page 5: WIPJam   Cross Platform Tools - Dec 2013

MOBILE LANDSCAPE

Page 6: WIPJam   Cross Platform Tools - Dec 2013
Page 7: WIPJam   Cross Platform Tools - Dec 2013
Page 8: WIPJam   Cross Platform Tools - Dec 2013

NATIVE APPS

Page 9: WIPJam   Cross Platform Tools - Dec 2013

• Built with standard native UI controls• Conforms to platform’s design

conventions• Optimal performance• Leverages platform level HW

acceleration• Access to full platform functionality

Defining Native: App Characteristics

Page 10: WIPJam   Cross Platform Tools - Dec 2013

• Objective C• Xcode on Mac

OS• Free

Tools/SDK• $99 Store

Fee/yr

• Java, C/C++• Plugin for

Eclipse plus others

• Free Tools/SDK• $25 Store Fee

(One Time)

• C#, C++, VB.NET

• Visual Studio/ VS Express

• Free Tools/SDK• $19 Store

Fee/yr Personal

• $99/yr Company

Page 11: WIPJam   Cross Platform Tools - Dec 2013

TECH APPROACHES TO CROSS PLATFORM

Page 12: WIPJam   Cross Platform Tools - Dec 2013
Page 13: WIPJam   Cross Platform Tools - Dec 2013

JavaScript Frameworks – What is It?• Mobile optimized website• UI rendered by browser– Safari for iOS– Chrome for Android– IE for Windows

• No app store deployment• Standard JavaScript, HTML, CSS• Low barrier to entry

Page 14: WIPJam   Cross Platform Tools - Dec 2013

JavaScript Frameworks - Tools• jQuery Mobile• Sencha Touch• jQT (jQTouch)• KendoUI• Many open source

Page 15: WIPJam   Cross Platform Tools - Dec 2013

Hybrid Apps – What Is It?• Native apps using embedded web

browser• HTML, CSS, JavaScript is used as to

render the UI• JavaScript & native “bridge” to

access device capabilities– Notifications, compass, filesystem

• Leverage existing JavaScript frameworks

• Tries to accomplish ‘write once run anywhere’

Page 16: WIPJam   Cross Platform Tools - Dec 2013

Hybrid Apps – Frameworks

• Apache Cordova (PhoneGap)• Others based on PhoneGap

Page 17: WIPJam   Cross Platform Tools - Dec 2013

Native Runtimes – What is it?• Compatibility layer that sits on top of

the native OS• Attempts to shield app from platform

differences• Executes code using different

methods– Interpretation– JIT Compiling– AOT Compiling

• Compiles to native code

Page 18: WIPJam   Cross Platform Tools - Dec 2013

Native Runtimes – Tools/Frameworks

• Xamarin.iOS, Xamarin.Android• Appcelerator• Corona• AppMobi• Adobe Flex

Page 19: WIPJam   Cross Platform Tools - Dec 2013

REDBIT’S CHOICE

Page 20: WIPJam   Cross Platform Tools - Dec 2013

Native Runtimes

Page 21: WIPJam   Cross Platform Tools - Dec 2013

• Javascript as the coding language• Compiled down to native app– Javascript is not compiled– Interpreted code

• Uses native controls on platform (ie button)

• Attempts to have one code base for– business logic code– User interface code

• Program to lowest common denominator for one code base

Page 22: WIPJam   Cross Platform Tools - Dec 2013

• C# as the coding language• Compiled down to native code– AOT Compiling to binary code for ARM

• Does not try to accomplish write once run anywhere– Code sharing of core business logic –Write UI for every platform as every

platform has different UI concepts

Page 23: WIPJam   Cross Platform Tools - Dec 2013

Our Final Choice

Page 24: WIPJam   Cross Platform Tools - Dec 2013

Why ?

• Development team had more experience with C#

• Compiles down to native code for performance

• Does not try to accomplish ‘write once run anywhere’

• Can share across iOS, Android and Windows (WPF, Windows 8, Windows Phone)

Page 25: WIPJam   Cross Platform Tools - Dec 2013

HOW DO YOU DECIDE?

Page 26: WIPJam   Cross Platform Tools - Dec 2013

Questions to ask …• Do you really need a native app? Is mobile

optimized satisfy requirements?• Native required then what platforms are

your customers on?• Is there a BYOD strategy in your

organization? • What are your development teams

strengths? Web/.NET/Java etc• Will customers accept an app that ‘does

not feel native to platform’?• Do you require platform integration such

as gestures, notifications, GPS, camera?

Page 27: WIPJam   Cross Platform Tools - Dec 2013

Questions to ask … (con’t)• Do you require offline functionality?• How does your app get discovered?– Enterprise app – you tell them where to get it.– Consumer app – they have to find you, they

usually use web

• Maintainability – easier to update a web app than a native/hybrid/runtime app

• Costs – Least - develop mobile optimized site– Mid – develop hybrid app– Mid 2 – Runtime app, share code, unique UI– Most – Pure native apps (write for every

platform)

Page 28: WIPJam   Cross Platform Tools - Dec 2013

@MarkArteaga

[email protected] www.markarteaga.com

Mark Arteaga | Founder @RedBitDev

www.RedBitDev.com

Thank you & Questions!

Page 29: WIPJam   Cross Platform Tools - Dec 2013

THANK YOU & QUESTIONS!