29
Native vs Cross Platform Dave Koziol, David Wang & Ronald Daugherty Arbormoon Software, Inc.

Native vs Cross Platform - Arbormoon Software, Inc....Native vs Cross Platform Dave Koziol, David Wang & Ronald Daugherty Arbormoon Software, Inc. About Dave Koziol • Long time Apple

  • Upload
    others

  • View
    8

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Native vs Cross Platform - Arbormoon Software, Inc....Native vs Cross Platform Dave Koziol, David Wang & Ronald Daugherty Arbormoon Software, Inc. About Dave Koziol • Long time Apple

Native vs Cross Platform

Dave Koziol, David Wang & Ronald DaughertyArbormoon Software, Inc.

Page 2: Native vs Cross Platform - Arbormoon Software, Inc....Native vs Cross Platform Dave Koziol, David Wang & Ronald Daugherty Arbormoon Software, Inc. About Dave Koziol • Long time Apple

About Dave Koziol

• Long time Apple Developer (21 WWDCs)

• Organizer Ann Arbor CocoaHeads & Google Developer Group Ann Arbor

• President at Arbormoon Software Inc.

• Multiple Top 5 apps in the iTunes App Store, and multiple apps featured by Google

Page 3: Native vs Cross Platform - Arbormoon Software, Inc....Native vs Cross Platform Dave Koziol, David Wang & Ronald Daugherty Arbormoon Software, Inc. About Dave Koziol • Long time Apple

About Ronald Daugherty

• Software Developer - 3 years• Android• Java• Kotlin• Flutter• Dart

• Tech Hobbyist

• Twitter: @ronjdaugherty29

• Father of Two• Basketball• Movie Affecionado• TVing• Youtube Rabbit Holes

Page 4: Native vs Cross Platform - Arbormoon Software, Inc....Native vs Cross Platform Dave Koziol, David Wang & Ronald Daugherty Arbormoon Software, Inc. About Dave Koziol • Long time Apple

Audience Background

• Prior coding experience?

• Current Students?

• IT Industry?

• Others?

Page 5: Native vs Cross Platform - Arbormoon Software, Inc....Native vs Cross Platform Dave Koziol, David Wang & Ronald Daugherty Arbormoon Software, Inc. About Dave Koziol • Long time Apple

Overview

• Native

• Flutter

• Xamarin

• React Native

• Titanium SDK

• Cordova

Page 6: Native vs Cross Platform - Arbormoon Software, Inc....Native vs Cross Platform Dave Koziol, David Wang & Ronald Daugherty Arbormoon Software, Inc. About Dave Koziol • Long time Apple

Landscape

Compiled Interpreted

MVC MVVM

Native Xamarin

Titanium SDK Cordova

Reative Flutter React Native

Page 7: Native vs Cross Platform - Arbormoon Software, Inc....Native vs Cross Platform Dave Koziol, David Wang & Ronald Daugherty Arbormoon Software, Inc. About Dave Koziol • Long time Apple

Native

• Building apps using the platform vendors primary tools.

• Supported by Apple, Google

Page 8: Native vs Cross Platform - Arbormoon Software, Inc....Native vs Cross Platform Dave Koziol, David Wang & Ronald Daugherty Arbormoon Software, Inc. About Dave Koziol • Long time Apple

Native Apple Facts

• Language: Swift or Objective-C

• IDE: Xcode

• Supported Platforms: iOS, tvOS, watchOS

Page 9: Native vs Cross Platform - Arbormoon Software, Inc....Native vs Cross Platform Dave Koziol, David Wang & Ronald Daugherty Arbormoon Software, Inc. About Dave Koziol • Long time Apple

Native Android Facts

• Language: Kotlin or Java

• IDE: Android Studio

• Platforms: Android, Android Things, Android Auto, Android TV, WearOS

Page 10: Native vs Cross Platform - Arbormoon Software, Inc....Native vs Cross Platform Dave Koziol, David Wang & Ronald Daugherty Arbormoon Software, Inc. About Dave Koziol • Long time Apple

Native Pros & Cons• Supported by platform

vendors

• Immediate Access to new platform features

• Always native look and feel

• Compiled

• Often need two different codebases

• Need to learn iOS & Android or have 2+ developers

Page 11: Native vs Cross Platform - Arbormoon Software, Inc....Native vs Cross Platform Dave Koziol, David Wang & Ronald Daugherty Arbormoon Software, Inc. About Dave Koziol • Long time Apple

Flutter

• Flutter is Google’s mobile app SDK for crafting high-quality native interfaces on iOS and Android in record time. Flutter works with existing code, is used by developers and organizations around the world, and is free and open source.

• Supported by Google

Page 12: Native vs Cross Platform - Arbormoon Software, Inc....Native vs Cross Platform Dave Koziol, David Wang & Ronald Daugherty Arbormoon Software, Inc. About Dave Koziol • Long time Apple

Flutter Facts

• Language: Dart

• IDE: Android Studio, Visual Studio Code

• Supported Platforms: Android, iOS, Google Fuchsia

Page 13: Native vs Cross Platform - Arbormoon Software, Inc....Native vs Cross Platform Dave Koziol, David Wang & Ronald Daugherty Arbormoon Software, Inc. About Dave Koziol • Long time Apple

Flutter Pros & Cons• Supported by Google

• Compiled

• Write once

• Immature

• Look & Feel controlled by Google

• When Apple changes UI, your app may look old

• Learn Dart

• Debug twice

Page 14: Native vs Cross Platform - Arbormoon Software, Inc....Native vs Cross Platform Dave Koziol, David Wang & Ronald Daugherty Arbormoon Software, Inc. About Dave Koziol • Long time Apple

Xamarin

• “Deliver native iOS, Android, and Windows apps using existing skills, teams, and code.”

• Supported by Microsoft

Page 15: Native vs Cross Platform - Arbormoon Software, Inc....Native vs Cross Platform Dave Koziol, David Wang & Ronald Daugherty Arbormoon Software, Inc. About Dave Koziol • Long time Apple

Xamarin Facts

• Language: C#

• IDE: Visual Studio 2017 and Visual Studio for Mac

• Supported Platforms: iOS, Android, Windows Phone, Windows 10 Mobile, Windows

Page 16: Native vs Cross Platform - Arbormoon Software, Inc....Native vs Cross Platform Dave Koziol, David Wang & Ronald Daugherty Arbormoon Software, Inc. About Dave Koziol • Long time Apple

Xamarin Pros & Cons• Supported by Microsoft

• Familiar tools, language & framework

• Compiled

• Write once

• UI design tools are lacking

• Debug twice

• Some lag in support of new platform versions

• Lowest common denominator UI

• Not Free

Page 17: Native vs Cross Platform - Arbormoon Software, Inc....Native vs Cross Platform Dave Koziol, David Wang & Ronald Daugherty Arbormoon Software, Inc. About Dave Koziol • Long time Apple

React Native

• “React Native lets you build mobile apps using only JavaScript. It uses the same design as React, letting you compose a rich mobile UI from declarative components.”

• Supported by Facebook• https://medium.com/airbnb-engineering/react-native-at-airbnb-f95aa460be1c

Page 18: Native vs Cross Platform - Arbormoon Software, Inc....Native vs Cross Platform Dave Koziol, David Wang & Ronald Daugherty Arbormoon Software, Inc. About Dave Koziol • Long time Apple

React Native Facts

• Language: JavaScript

• IDE: None, Favorite Text Editor

• Supported Platforms: iOS, Android

Page 19: Native vs Cross Platform - Arbormoon Software, Inc....Native vs Cross Platform Dave Koziol, David Wang & Ronald Daugherty Arbormoon Software, Inc. About Dave Koziol • Long time Apple

Reactive Native Pros & Cons

• Supported by Facebook

• Write once

• Supported by Facebook

• Interpreted

• Debug twice

• Some lag in support of new platform versions

• Lowest common denominator UI

Page 20: Native vs Cross Platform - Arbormoon Software, Inc....Native vs Cross Platform Dave Koziol, David Wang & Ronald Daugherty Arbormoon Software, Inc. About Dave Koziol • Long time Apple

Titanium SDK

• “The Titanium SDK provides community developers with an unmatched ability to create quality native, mobile web or rich hybrid applications to all platforms from a single code base, using JavaScript”

• Supported by Appcelerator

Page 21: Native vs Cross Platform - Arbormoon Software, Inc....Native vs Cross Platform Dave Koziol, David Wang & Ronald Daugherty Arbormoon Software, Inc. About Dave Koziol • Long time Apple

Titanium SDK Facts

• Language: JavaScript

• IDE: Appcelerator Studio

• Supported Platforms: iOS, Android

Page 22: Native vs Cross Platform - Arbormoon Software, Inc....Native vs Cross Platform Dave Koziol, David Wang & Ronald Daugherty Arbormoon Software, Inc. About Dave Koziol • Long time Apple

Titanium SDKPros & Cons

• Familiar language

• Write once

• Interpreted

• IDE is lacking

• Debug twice

• Lag in support of new platform versions

• Lowest common denominator UI

• Not Free

Page 23: Native vs Cross Platform - Arbormoon Software, Inc....Native vs Cross Platform Dave Koziol, David Wang & Ronald Daugherty Arbormoon Software, Inc. About Dave Koziol • Long time Apple

Cordova

• “Mobile apps with HTML, CSS & JS• Target multiple platforms with one code

base• Free and open source”

• Supported by Apache

Page 24: Native vs Cross Platform - Arbormoon Software, Inc....Native vs Cross Platform Dave Koziol, David Wang & Ronald Daugherty Arbormoon Software, Inc. About Dave Koziol • Long time Apple

Cordova Facts

• Language: JavaScript

• IDE: None, Favorite Text Editor

• Supported Platforms: iOS, Android, Windows, macOS

Page 25: Native vs Cross Platform - Arbormoon Software, Inc....Native vs Cross Platform Dave Koziol, David Wang & Ronald Daugherty Arbormoon Software, Inc. About Dave Koziol • Long time Apple

Cordova Pros & Cons• Familiar language

• Write once

• Interpreted

• Debug twice

• Oldest

• Lag in support of new platform versions

• Lowest common denominator UI

Page 26: Native vs Cross Platform - Arbormoon Software, Inc....Native vs Cross Platform Dave Koziol, David Wang & Ronald Daugherty Arbormoon Software, Inc. About Dave Koziol • Long time Apple

Resources: Followup Sessions

• Intro to Coding for Android – 6/19 8pm, Grand Circus

• Designing for Mobile – 6/20 2pm, 20 Witherell

• Surviving and Thriving in Tech (When You’re Not a Techie) – 6/21 1pm, Aloft Detroit

Page 27: Native vs Cross Platform - Arbormoon Software, Inc....Native vs Cross Platform Dave Koziol, David Wang & Ronald Daugherty Arbormoon Software, Inc. About Dave Koziol • Long time Apple

Resources: Detroit Community

• Motor City CocoaHeads

• 3rd Thursday of every month, food 6:30, Talk 7pm

• https://www.meetup.com/MotorCityCocoaHeads/

• Google Developer Group Detroit

• Web: https://www.meetup.com/Detroit-Google-Developers-Group/

• Mobile Monday

• Groups in Ann Arbor and Detroit

• Web: http://mobilemondaymichigan.org

Page 28: Native vs Cross Platform - Arbormoon Software, Inc....Native vs Cross Platform Dave Koziol, David Wang & Ronald Daugherty Arbormoon Software, Inc. About Dave Koziol • Long time Apple

Resources: Ann Arbor Community• Motor City CocoaHeads

• 3rd Thursday of every month, food 6:30, Talk 7pm

• https://www.meetup.com/MotorCityCocoaHeads/

• CocoaHeads Ann Arbor

• 2nd Thursday of every month, Pizza 6:30pm, Talk 7pm

• Web: http://meetup.com/A2-CocoaHeads

• Mobile Monday

• Groups in Ann Arbor and Detroit

• Web: http://mobilemondaymichigan.org

Page 29: Native vs Cross Platform - Arbormoon Software, Inc....Native vs Cross Platform Dave Koziol, David Wang & Ronald Daugherty Arbormoon Software, Inc. About Dave Koziol • Long time Apple

Q&A