21
Today’s Options for Cross Platform Mobile Development Greg James – Senior Consultant - @GregAlexJames

Today’s Options for - slides.yowconference.com · Mobile History ›iPhone first released June 29, 2007 ›Android released September 23, 2008 ›Since then: ›In 2013, 61% of

  • Upload
    others

  • View
    4

  • Download
    0

Embed Size (px)

Citation preview

Today’s Options for Cross Platform Mobile Development

Greg James – Senior Consultant - @GregAlexJames

Page

Agenda› Why go Cross Platform?

› Technology Selection Strategy

› The Current Contenders:

› Cordova

› React Native

› Xamarin

› Live Demonstrations

/ Copyright ©2014 by Readify Limited2

Page

Mobile History› iPhone first released June 29, 2007

› Android released September 23, 2008

› Since then:

› In 2013, 61% of Americans own a smartphone[1]

› New form factors (Tablets)

› New OS’s (Windows Phone, Chromebook etc)

/ Copyright ©2014 by Readify Limited3

[1] Pew Research Center. June 5, 2013

Page

Why not Always Native Apps?› Pros

› Best performance

› Cutting edge device interaction

› Cons

› Multiple skillsets required

› Much higher cost to develop and maintain

apps across multiple platforms and form

factors/ Copyright ©2014 by Readify Limited4

Page

Technology Selection Strategy

/ Copyright ©2014 by Readify Limited5

Page

Rich vs Reach

/ Copyright ©2014 by Readify Limited6

Rich

Cost

Reach

Page

Rich vs Reach› Can change per app/audience!

› It’s not black and white – it’s a scale!

› It will change with context!

/ Copyright ©2014 by Readify Limited7 Rich Reach

Cost

Page

Factors affecting cross-platform approach› Business goals

› Rich vs reach

› Richness of UI

› Richness of device integration

› Targeted devices – make, model, OS, versions

› Team skillsets

› Performance

/ Copyright ©2014 by Readify Limited8

Page

Today’s Technology Options

/ Copyright ©2014 by Readify Limited9

PagePage

The BattlegroundCross-Compiled Javascript Engine Hybrid

More ReachMore Rich

Page

Xamarin› MonoTouch (now Xamarin iOS) was first

released 14th September, 2009

› Compiled into ARM assembly code (iOS), or

native assembly (Android)

› Philosophy:

› Write UI specific to device, Share Business

Logic

/ Copyright ©2014 by Readify Limited11

Page

Xamarin› Pros

› Shared code across platforms and potentially

with backend

› Potential existing skillset alignment

› Documentation similar for Xamarin / Native

› Full device capabilities

› Native performance

› Language features

/ Copyright ©2014 by Readify Limited12

Page

Xamarin› Cons

› Licensing costs

› Platform specific UI can still be a lot of effort

› Platform lock-in

› Ramp up

/ Copyright ©2014 by Readify Limited13

Page

React Native (Javascript Engine)› First announced in February, 2015. Android

Support added September 14, 2015.

› Javascript is run on a separate thread to the UI,

and used to create state in a virtual DOM

› Philosophy: “Learn Once – Write Everywhere”

/ Copyright ©2014 by Readify Limited14

Page

React Native› Pros

› Creating Native UI Controls using javascript

› Very fast development feedback cycle on the

device!

› Able to debug UI easier than expected

› Easy to pick up

/ Copyright ©2014 by Readify Limited15

Page

React Native› Cons

› The technology and community is relatively

not mature

› Number of controls are not available

› Difficult to tell if libraries support Android

› Confusion around the best way to do

navigation

› Multiple small qwirks

/ Copyright ©2014 by Readify Limited16

Page

Cordova (Hybrid)› Cordova (Formerly PhoneGap) created in 2009

› Wrapper application that contains a browser.

Most code developed in HTML5 and Javascript

› Wrapper provides native functionality

› Philosophy: “Write Once, Run Everywhere”

/ Copyright ©2014 by Readify Limited17

Page

Cordova (Hybrid)› Pros

› Standard web development skillsets

› Can utilise most native capabilities

› Lots of choice!

› Cons

› Browser rendering differences

› Uses web controls instead of Native controls

› Good performance takes effort/ Copyright ©2014 by Readify Limited18

Page

Ionic Framework› Built on top of Cordova

› Provides large set of UI Controls combined with

Angular

› Makes the UI look like a mobile UI instead of a

website!

› Ionic Package, Ionic Creator

/ Copyright ©2014 by Readify Limited19

Page

Demos

/ Copyright ©2014 by Readify Limited20

Thankyou!

Questions?

Greg James – Senior Consultant - @GregAlexJames