Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Dave Ortinau: Xamarin Mobile Platform: Compromise less, deliver more

1fa9cb8c7997c8c4d3d251fb5e41f749?s=47 Realm
March 01, 2017

Dave Ortinau: Xamarin Mobile Platform: Compromise less, deliver more

Video: https://www.youtube.com/watch?v=kAVnoKi2oLY

Speaker: Dave has been in the creative software field for 20 years. After a successful startup experience with ThisLife and Shutterfly, Dave founded Rendr with teammate Ben Bishop where they help other startups and businesses continue to innovate and grow. Dave is a regular conference speaker focusing on the intersection of technology and human behavior.

Abstract: Xamarin is delivering on the hopes and promises of a cross platform mobile solution. Apps look and feel native on iOS and Android for the simple reason that they are. With a history going as far back as the origin of the Mono Project in 2001, Xamarin is not a new sensation. A time tested set of tools, open source frameworks, and runtimes, Xamarin continues to push boundaries of innovation. Their motto is to delight developers, helping them do more and sacrifice less. How does this work?
In this session we will dive into how Xamarin delivers app experiences that maximize developer talent and resources while limiting sacrifices to designers, users, and the businesses dependent upon them.
Maximize code sharing: 60% and even 90% or greater, and why that’s important
What is Xamarin.Forms and when should you use it
Wearables and other extensions
HockeyApp, TestCloud and more
A year in the life using Xamarin — what it's like to work through release cycles from Xamarin as well as Apple and Google
Since 2012, Rendr’s team has been delivering high quality mobile applications using Xamarin for clients from startup to Fortune 100.

Twitter Link: https://twitter.com/davidortinau

1fa9cb8c7997c8c4d3d251fb5e41f749?s=128

Realm

March 01, 2017
Tweet

Transcript

  1. Xamarin Mobile Platform Compromise Less Deliver More

  2. David Ortinau @davidortinau | http://rendr.io 21 yrs web, interactive, mobile

    Xamarin MVP Microsoft PM for Xamarin.Forms BA English Maryville University
  3. None
  4. Shutterfly / ThisLife - Photo & Video Web App

  5. How You Say

  6. Team in Training

  7. 2009 Rodale Publishing

  8. the compromises

  9. • APIs - less than 100% • UI - doesn’t

    feel or behave native • Performance - slower than native by unacceptable margin • Tools - lacking in guidance and assistance • Community - resources, tools, plugins, etc. • Workflow - testing, deployment, monitoring, reporting
  10. a little history

  11. • 2001 • 2009 September • 2011 April • 2011

    May • 2013 February • 2013 April • 2014 May • 2014 October • 2015 April • 2015 November • 2016 February Timeline Mono Begins MonoTouch 1.0 Released Mono for Android 1.0 Released Xamarin Founded Xamarin 2.0 TestCloud Xamarin 3.0 Xamarin Insights 1 Million Developers Xamarin 4.0 Acquired by Microsoft
  12. the approach

  13. Silo approach iOS Windows Android Objective-C/Swift Xcode C# Visual Studio

    Java Android Studio No shared code • Many languages and development environments • Multiple teams
  14. Write once, run anywhere Lua Javascript Actionscript HTML+CSS Limited native

    API access • Slow performance • Poor user experience App generator
  15. iOS C# UI Windows C# UI Android C# UI Shared

    C# logic Xamarin’s unique approach Shared C# codebase • 100% native API access • High performance
  16. Native performance Xamarin.iOS does full Ahead Of Time (AOT) compilation

    to produce an ARM binary for Apple’s App Store. Xamarin.Android takes advantage of Just In Time (JIT) compilation on the Android device. ARM BINARY Runs natively .APP AOT .NET C# Bindings .APK Compile and Link .NET C# Bindings IL + JIT Runs natively
  17.  Always up-to-date Same-day support: • iOS 5 • iOS

    6 • iOS 7 • iOS 8 • iOS 9 • iOS 10 Full support for: • Apple Watch • Apple TV • Android Wear • Amazon Fire TV • Google Glass • and much more
  18. Xamarin.Forms Approach Shared User Interface Shared App Logic Shared C#

    Logic Shared UI Code
  19. Open Source – open.xamarin.com

  20. simplifying development

  21. Shared C# Backend

  22. UI+APIs UI + APIs UI + APIs Battery GPS Lights

    Notifications Settings Text To Speech Battery GPS Lights Notifications Settings Text To Speech Battery GPS Lights Notifications Settings Text To Speech Platform Specific Code What if we didn’t have to write this code?
 What if we could access it from shared code?
  23. TextToSpeech Speak(“Hello World”); AVSpeechSynthesizer SpeechSynthesizer

  24. Common API Plugins for Xamarin xamarin.com/plugins

  25. share even more

  26. Xamarin.Forms Build native UIs for iOS, Android, and Windows from

    a single, shared codebase. and Tizen and macOS and…
  27. iOS C# UI Windows C# UI Android C# UI Shared

    C# Logic Shared C# Logic Xamarin.Forms
  28. Shared C# Logic Shared UI Code ✓ 40+ Pages, layouts,

    and controls (Build from code behind or XAML) ✓ Two-way data binding ✓ Navigation ✓ Animation API ✓ Dependency Service ✓ Messaging Center
  29. Content MasterDetail Navigation Tabbed Carousel Stack Absolute Relative Grid ContentView

    ScrollView Frame Pages Layouts
  30. Controls ActivityIndicator BoxView Button DatePicker Editor Entry Image Label ListView

    Map OpenGLView Picker ProgressBar SearchBar Slider Stepper TableView TimePicker WebView EntryCell ImageCell SwitchCell TextCell ViewCell
  31. tools

  32. Visual Studio Xamarin Studio

  33. Visual Studio for Mac (Preview) iOS, Android, & macOS .NET

    development .NET Core & ASP.NET Core Tools for Azure
  34. Designers

  35. Designers

  36. Designers

  37. Previewer

  38. Inspector

  39. None
  40. Workbooks

  41. Microsoft’s Complete Mobile DevOps Solution

  42. frameworks, plugins, community

  43. • Application Frameworks • MvvmCross • MvvmLight • Prism •

    FreshMvvm • ReactiveUI (Mvvm + Reactive Extensions)
  44. • Components and Plugins • NuGet • https://github.com/xamarin/XamarinComponents

  45. None
  46. deliver more

  47. 80% UI Share 85% Total Code Share

  48. One developer built Android app in just three months, sharing

    nearly 70% code between Android and iOS platforms
  49. 100% Image Rendering Share 64% Total Code Share Team of

    3, 6 months to iOS + Android 5 months to iOS + Android Total rewrite from JS Blog Interview
  50. • APIs - 100% • UI - native! • Performance

    - up to you! • Tools - yup. • Community - rich! • Workflow - yes!
  51. Thank You!